取消springsecurity默认的登录验证
问题描述
springboot 2.x,访问swagger-ui.html时,会自动跳转到springsecurity的login页,自定义过滤路径的拦截器无效。
解决方法一
修改依赖,项目因为使用了一些加密功能才引入springsecurity依赖,原依赖如下
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-security</artifactId>
</dependency>
查看所用到的类属于哪个jar包,就只引入相关jar包
修改后的依赖为
<dependency>
<groupId>org.springframework.security</groupId>
<artifactId>spring-security-core</artifactId>
</dependency>
既保留了所需功能,又去除了权限验证
方法二
禁用springsecurity的csrf验证
@Configuration
@EnableWebSecurity
public class SecurityConfiguration extends WebSecurityConfigurerAdapter {
@Override
protected void configure(HttpSecurity http) throws Exception {
http
.csrf()
.disable()
.authorizeRequests()
.anyRequest()
.permitAll()
.and()
.logout()
.permitAll();
}
}