我正在使用Spring MVC和Spring Security制作一个简单的Web应用程序。有人可以解释我在哪些情况下我们需要方法级别的安全性和URL级别的安全性? 因为我们可以限制特定角色的用户通过URL级别安全性访问页面,或者通过在视图中保留安全性标记来执行操作。那么,用户如何从服务层访问方法?在这种情况下,方法级安全性如何帮助?请解释一下。
提前致谢。
答案 0 :(得分:0)
方法级别安全性可视为URL级别安全性的补充。例如,我们可能希望应用程序中的某些URL受到保护,需要角色ROLE_USER才能访问它们。这可以通过URL级别安全性来实现。
https://domain.com/entities/5
考虑上面的URL,可以使用URL级别安全性进行保护,如下所示。
<security:intercept-url pattern="/entities/**" access="hasRole('ROLE_USER')" />
但是,有时您需要更细粒度的安全性。例如,您可能希望仅允许其所有者访问给定实体(id = 5)。这是您无法通过URL级别安全性实现的,但可以通过方法级别的安全性来实现。