1. 导入Spring security的依赖
<!-- SpringSecurity 对 Web 应用进行权限管理 -->
<dependency>
<groupId>org.springframework.security</groupId>
<artifactId>spring-security-web</artifactId>
<version>4.2.10.RELEASE</version>
</dependency>
<!-- SpringSecurity 配置 -->
<dependency>
<groupId>org.springframework.security</groupId>
<artifactId>spring-security-config</artifactId>
<version>4.2.10.RELEASE</version>
</dependency>
<!-- SpringSecurity 标签库 -->
<dependency>
<groupId>org.springframework.security</groupId>
<artifactId>spring-security-taglibs</artifactId>
<version>4.2.10.RELEASE</version>
</dependency>
2. 加入Spring security控制权限
<filter>
<filter-name>springSecurityFilterChain</filter-name>
<filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class>
</filter>
<filter-mapping>
<filter-name>springSecurityFilterChain</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
注意:
springSecurityFilterChain
标 签 中 必 须 是
springSecurityFilterChain
3. 加入配置类
@Configuration
@EnableWebSecurity
public class WebAppSecurityConfig extends WebSecurityConfigurerAdapter {
}
4. 在配置类中重写父类的 configure(HttpSecurity security)方法。
protected void configure(HttpSecurity security) throws Exception {
.authorizeRequests()对请求进行授权
.antMatchers()要授权的url地址,可以使用ANT风格的URL地址
.permitAll() 允许上面使用 ANT 风格设置的全部请求
.anyRequest()
.authenticated() 其他没有设置的全部请求都需要认证
.formLogin() 设置未授权请求跳转到登录页面
.loginPage 指定登录页
.loginProcessingUrl 指定提交登录表单的地址
loginProcessingUrl()
方法指定了登录地址,就会覆盖
loginPage()
方法中设置的默认值
/index.jsp POST