2014-04-28 48 views
0

我刚刚了解春季安全。 考虑春季安全

<security:form-login always-use-default-target="false" 
    authentication-failure-url="/login.do?error=1" default-target-url="admin/admin.do" 
    login-page="/login.do?error=0" login-processing-url="/j_security_check" /> 

目前所有谁登录的用户能够访问管理页面。 如果我需要基于授权限制用户到管理页面,例如,如果用户有ROLE_UPDATE,那么需要做些什么。这是类似于...非jee.xml文件。

或者是否需要更改应用程序代码,以便为使用表单成功登录的用户查找“ROLE_UPDATE”。

回答

0

认识到这一问题是旧的,但对于那些谁找到这个...详情可以在这里有良好的实例和文档发现:http://docs.spring.io/spring-security/site/docs/4.0.0.RELEASE/reference/htmlsingle/#authorization

最常见的情况是,每个用户分配给角色的集合他们。然后您可以通过角色来限制功能。该功能可能是网址和/或方法。由于您的示例显示了XML配置,因此以下是一个XML示例,说明如何限制对URL的访问。 (注:这是在配置的HTTP部分,即兄弟姐妹形式登录你上面显示)

<http> 
    <intercept-url pattern="/admin/**" access="hasRole('ROLE_ADMIN')"/> 
    <form-login ... /> 
</http> 

还有更复杂的选项,但这应该让你开始。有一些很好的细节在这里:http://docs.spring.io/spring-security/site/docs/4.0.0.RELEASE/reference/htmlsingle/#ns-form-and-basic