Spring Security6 设置免登录接口地址

  1. 在SecurityFilterChain中设置免登录接口地址。如果定义了多个SecurityFilterChain,并且前面的SecurityFilterChain里使用了anyRequest().authenticated(),后面的免登录可能会失效。
java 复制代码
@Configuration
@EnableWebSecurity
public class SecurityConfig {

    @Bean
    public SecurityFilterChain filterChain(HttpSecurity http) throws Exception {
        http
            .authorizeHttpRequests(authorize -> authorize
                .requestMatchers("/api1/**", "/api2/**").permitAll()
                .anyRequest().authenticated()
            );
        return http.build();
    }

}
  1. 使用WebSecurityCustomizer设置免登录接口地址。这里设置的免登录接口地址是优先于SecurityFilterChain进行判定的。
java 复制代码
@Configuration
public class SecurityConfiguration {
    @Bean
    public WebSecurityCustomizer webSecurityCustomizer() {
        return (web) -> web.ignoring().requestMatchers("/ignore1/**", "/ignore2/**");
    }
}
相关推荐
许彰午2 分钟前
06_Java面向对象入门
java·开发语言·python
Java_2017_csdn3 分钟前
Java 策略模式(Strategy Pattern)-(二)
java·开发语言·策略模式
摇滚侠6 分钟前
CSDN AI 数字营销测评 营销组件
java
爱折腾的程序员7 分钟前
Java 8 Stream 流常用操作:从入门到原理
后端
Java_2017_csdn7 分钟前
Java 策略模式(Strategy Pattern)-(一)
java·开发语言·策略模式
plainGeekDev8 分钟前
XML Shape/Selector → Kotlin 动态创建
android·java·kotlin
李小狼lee10 分钟前
认识一下枚举类型
后端
plainGeekDev12 分钟前
Java 自定义 View → Kotlin 自定义 View
android·java·kotlin
卷无止境13 分钟前
Jupyter Kernel 是什么?原来notebook不仅可用python
后端