我只是最近才开始使用MVC方法,所以我认为这对您来说是一个简单的专家:
我应该在哪里放置访问控制?
还是还有其他选择?
最佳答案
这将取决于您所使用的框架,而语言将决定您可以使用的许多工具。
从高层次上讲,您应该在进入点处配置访问安全性。并且,您应该仔细检查访问安全性的每个级别,这些级别可以被认为是自治的,或者可以从应用程序的多个部分重复使用(谁知道安全性是否由使用您的逻辑层的同事的门户检查过?等等)。另一个值得担心的问题是数据安全性,它与您的数据越接近越好(因此,属于上面的#2,但要理解它是独立的)。
这类似于我喜欢谈论的应用程序逻辑和域逻辑之间的差异。如果存在某个特定于某个特定应用程序的逻辑(与Windows服务相比,Web应用程序或其他任何逻辑),则应仅在该应用程序中定义该逻辑。如果某些逻辑跨越了应用程序之间的边界(可以在应用程序之间重用),那么它就可以视为领域逻辑,应该在模型中进行定义。您的应用程序可以使用域逻辑,但是他们不应该拥有它。
关于MVC应用程序中的安全性和访问控制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/291294/