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/**");
    }
}
相关推荐
驱动探索者3 小时前
[缩略语大全]之[INTEL]篇
java·后端·spring·intel
Victor3563 小时前
Netty(21)Netty的SSL/TLS支持是如何实现的?
后端
老鼠只爱大米3 小时前
Java设计模式之代理模式(Proxy)深度解析
java·设计模式·代理模式·proxy pattern·java设计模式·proxypattern
IT_陈寒3 小时前
Java21新特性实战:5个杀手级改进让你的开发效率提升40%
前端·人工智能·后端
Victor3563 小时前
Netty(22)如何实现基于Netty的HTTP客户端和服务器?
后端
wepe123 小时前
FlyEnv---phpstudy平替
java·python·mysql·nginx·php
Echo flower3 小时前
使用Java将HTML内容转换为Word文档
java·html·word
IT艺术家-rookie3 小时前
golang-- sync.WaitGroup 和 errgroup.Group 详解
开发语言·后端·golang
一人の梅雨3 小时前
京东商品详情接口深度解析:从宙斯签名到商详数据价值重构
java·spring cloud·微服务