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/**");
    }
}
相关推荐
oyzz1205 分钟前
Redis 安装及配置教程(Windows)【安装】
java
YNCAH_11 分钟前
特殊类的设计
java·开发语言
商吉婆尼17 分钟前
天地图API调用注意事项
java·spring·天地图
芒果披萨26 分钟前
sql存储过程
java·开发语言·数据库
yaoxin52112332 分钟前
368. Java IO API - 基本文件属性
java·开发语言·python
_日拱一卒38 分钟前
LeetCode:最小覆盖字串
java·数据结构·算法·leetcode·职场和发展
禾小西41 分钟前
性能测试后的瓶颈定位与调优:自下而上找问题,自上而下解难题
java·测试工具
建军啊1 小时前
java审计进阶
java·开发语言·python
2401_889626921 小时前
Java流程控制与方法全解析
java·开发语言
TlYf NTLE1 小时前
Spring Boot spring-boot-maven-plugin 参数配置详解
spring boot·后端·maven