SpringSecurity使用自定义认证页面
4 SpringSecurity使用自定义认证页面
4.1 在SpringSecurity主配置文件中指定认证页面配置信息
4.1.1 配置springSecurity.xml配置文件
<?xmlversion="1.0"encoding="UTF-8"?>
<beansxmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:security="http://www.springframework.org/schema/security"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/security
http://www.springframework.org/schema/security/spring-security.xsd">
<!--资源不过滤-->
<security:httpsecurity="none"pattern="/login.html"></security:http>
<security:httpsecurity="none"pattern="/failer.html"></security:http>
<!--
auto-config:true开启spring-security的自动配置
use-expressions="false"开启使用spring表达式的功能
-->
<security:httpauto-config="true"use-expressions="true">
<!--指定login.jsp页面可以被匿名访问-->
<security:intercept-urlpattern="/login.jsp"access="permitAll()"/>
<!--
intercept-url:拦截的请求资源/**所有的请求全部拦截
access:访问资源所需要的权限
-->
<security:intercept-urlpattern="/**"access="hasAnyRole('ROLE_USER','ROLE_ADMIN')"></security:intercept-url>
<!--
配置自定义表单
login-page:自定义的登录页面
login-processing-url:表单提交之后,交给那么action去处理springSecurity默认提供了一个叫/login的逻辑处理
username-parameter:值必须和登录表单里面的控件名称保持一致。
password-parameter值必须和登录表单里面的控件名称保持一致。
authentication-failure-forward-url:认证失败之后,需要跳转的页面
default-target-url:认证成功之后,需要跳转的页面
-->
<security:form-loginlogin-page="/login.jsp"login-proc