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/**");
    }
}
相关推荐
唐青枫13 小时前
Java ReentrantLock 实战详解:比 synchronized 更灵活的可重入锁
java
看昭奚恤哭14 小时前
ontainer App】Container App无法从Container Registries 拉取镜像 - 报错 Forbidden
后端·python·flask
ShiXZ21314 小时前
Java 8 Stream API 实用技巧详解:从入门到精通
java·开发语言
C++、Java和Python的菜鸟15 小时前
第9章 后端Web进阶(AOP)
java·开发语言·前端
东北赵四15 小时前
关于Java泛型的知识点及其相关面试题
java·windows·python
姓蔡小朋友15 小时前
Java线程并发
java·开发语言·python
程序员cxuan15 小时前
DeepSeek-V4-Flash 正式版来了!这次提升有点夸张。
人工智能·后端·程序员
执笔画流年呀15 小时前
⾃动化测试常⽤函数
java·dubbo
疯狂打码的少年15 小时前
【面向对象】UML概述(基本构造块:事物/关系/图)
java
一水16 小时前
TTFT优化:一个方案的5次推倒重来
java·ai·状态模式