我是春天安全的新手。我想了解以下行对我的Web应用程序的作用
<security:http>
<security:intercept-url pattern="/**" access="ROLE_USER" />
<security:form-login />
<security:logout />
</security:http>
据我了解
如果错误/不充分,请纠正以上几点。另外,有人可以解释access="ROLE_USER"
做了什么吗?
答案 0 :(得分:1)
intercept-url
Spring Security,将检查是否有已登录的用户以及他/她是否具有访问该URL所需的角色。在您的情况下,您匹配所有请求。请注意,如果您有多个intercept-url
,则按照它们在配置中写入的顺序进行评估(如果在较窄的intercept-url
之前放置较宽的 <authentication-manager>
<authentication-provider>
<user-service>
<user name="myuser" password="mypass" authorities="ROLE_USER" />
<user name="myadmin" password="mypass" authorities="ROLE_ADMIN" />
</user-service>
</authentication-provider>
</authentication-manager>
,则不会对其进行评估)。 2,3。你做对了。
要了解访问属性,您必须了解身份验证管理器和提供程序。例如,您可以:
<security:intercept-url pattern="/admin/**" access="ROLE_ADMIN" />
(还有其他身份验证提供程序,用于JDBC,LDAP ......) 如果你添加另一个intercept-url:
{{1}}
myadmin可以访问它,但myuser不能访问。
答案 1 :(得分:0)
只有在授权作者中使用ROLE_USER的用户才能访问该资源。