A. 将前台用户和后台管理用户,设置在同一登录页面登录,进行身份验证。
applicationContext-security.xml的设置如下:
<http auto-config="true" use-expressions="true"> <!--设置登录页面和登录处理,及验证失败的url--> <form-login login-processing-url="/user/j_spring_security_check" login-page="/userlogin" authentication-failure-url="/userlogin?login_error=t" />
<!--设置注销用户的url--> <logout logout-url="/user/j_spring_security_logout" logout-success-url="/user/"/>
<!--设置匹配前台用户url,所拥有的权限--> <intercept-url pattern="/user/**" access="hasRole('ROLE_USER')"/>
<!--设置匹配后台管理用户url,所拥有的权限--> <intercept-url pattern="/admin/**" access="hasRole('ROLE_ADMIN')"/> </http>
<!--设置验证管理--> <authentication-manager alias="authenticationManager"> <!--可根据需求,设置验证提供者--> <authentication-provider> <user-service> <user name="root" authorities="ROLE_ADMIN" password="root" /> <user name="admin" authorities="ROLE_ADMIN" password="admin" /> <user name="tonyzhao" password="tonyzhao" authorities="ROLE_USER" /> <user name="mr_zyf@163.com" password="mr_zyf@163.com" authorities="ROLE_USER" /> </user-service> </authentication-provider> </authentication-manager>
B. 如果分别实现前台用户和后台管理用户登录
applicationContext-security.xml的设置如下:
<!--设置匹配后台管理用户url,登录页面和所拥有的权限,以及引用adminAuthManager验证管理--> <http auto-config="true" pattern="/admin/**" use-expressions="true" authentication-manager-ref="adminAuthManager"> <form-login login-processing-url="/admin/j_spring_security_check" login-page="/adminlogin" authentication-failure-url="/adminlogin?login_error=t" /> <logout logout-success-url="/admin/" logout-url="/admin/j_spring_security_logout" /> <intercept-url pattern="/**" access="hasRole('ROLE_ADMIN')"/> </http>
<!--设置匹配前台用户url,登录页面和所拥有的权限,以及引用userAuthManager验证管理--> <http auto-config="true" use-expressions="true" authentication-manager-ref="userAuthManager"> <form-login login-processing-url="/user/j_spring_security_check" login-page="/userlogin" authentication-failure-url="/userlogin?login_error=t" /> <logout logout-url="/user/j_spring_security_logout" logout-success-url="/user/"/> <intercept-url pattern="/user/**" access="hasRole('ROLE_USER')"/> </http>
<!--前台用户验证管理bean--> <authentication-manager id="userAuthManager"> <authentication-provider> <user-service> <user name="tonyzhao" password="tonyzhao" authorities="ROLE_USER" /> <user name="mr_zyf@163.com" password="mr_zyf@163.com" authorities="ROLE_USER" /> </user-service> </authentication-provider> </authentication-manager>
<!--后台管理用户验证管理bean--> <authentication-manager id="adminAuthManager"> <authentication-provider> <user-service> <user name="root" authorities="ROLE_ADMIN" password="root" /> <user name="admin" authorities="ROLE_ADMIN" password="admin" /> </user-service> </authentication-provider> </authentication-manager>
浙公网安备 33010602011771号