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/**");
    }
}
相关推荐
小灵不想卷5 小时前
LangChain4j Low 和 Hight-level API
java·langchain4j
Cosmoshhhyyy5 小时前
《Effective Java》解读第39条:注解优先于命名模式
java·开发语言
亓才孓5 小时前
[SpringIOC]NoSuchBeanDefinitionException
java·spring
追随者永远是胜利者6 小时前
(LeetCode-Hot100)20. 有效的括号
java·算法·leetcode·职场和发展·go
前路不黑暗@6 小时前
Java项目:Java脚手架项目的文件服务(八)
java·开发语言·spring boot·学习·spring cloud·docker·maven
毅炼7 小时前
Java 集合常见问题总结(3)
java·开发语言·后端
百锦再7 小时前
Java多线程编程全面解析:从原理到实战
java·开发语言·python·spring·kafka·tomcat·maven
Cosmoshhhyyy8 小时前
《Effective Java》解读第38条:用接口模拟可扩展的枚举
java·开发语言
wangbing11258 小时前
平台介绍-主数据系统-同步消息设计
java
小冷coding8 小时前
【Java】最新Java高并发高可用平台技术选型指南(思路+全栈路线)
java·开发语言