You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Spring Security 6.1 配置迁移咨询

Spring Security 6.1 迁移后的正确配置

替换过时的链式配置写法

Spring Security 6.x 推荐使用嵌套Lambda配置风格替代旧的.and()链式调用,同时优化了配置结构的可读性。以下是迁移后的完整配置:

@Bean
public SecurityFilterChain securityFilterChain(HttpSecurity http) throws Exception {
    http
        // 配置OAuth2资源服务器(JWT认证)
        .oauth2ResourceServer(oauth2 -> oauth2
            .jwt(Customizer.withDefaults())
        )
        // 启用OAuth2登录流程(默认配置)
        .oauth2Login(Customizer.withDefaults())
        // 配置登出逻辑
        .logout(logout -> logout
            .addLogoutHandler(keycloakLogoutHandler)
            .logoutSuccessUrl("/")
        );

    return http.build();
}

关键变化说明

  • 移除了旧的.and()链式拼接,改用嵌套Lambda将同类配置分组,代码逻辑更紧凑清晰
  • oauth2ResourceServer通过Lambda参数oauth2配置JWT,Customizer.withDefaults()会启用默认的JWT解析与认证逻辑
  • oauth2Login直接传入默认配置器启用登录流程,如需自定义登录页面、授权端点等,可在Lambda中扩展配置
  • 登出配置直接嵌套在http的主配置链中,无需额外的链式连接,保持配置连贯性

自定义JWT逻辑扩展(可选)

如果需要自定义JWT解析规则(比如声明转换器、JWT处理器),可以扩展jwt()的Lambda配置:

.oauth2ResourceServer(oauth2 -> oauth2
    .jwt(jwt -> jwt
        .jwtAuthenticationConverter(customJwtConverter())
    )
)

内容的提问来源于stack exchange,提问作者Simon Martinelli

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.19 00:04:53