spring-security 如何改变弹性启动资源服务器中'认证'的实现?

o0lyfsai  于 2022-11-11  发布在  Spring
关注(0)|答案(1)|浏览(200)

我有一个配置了opaque-token内省的 Spring 启动资源服务器。
它可以工作,但我现在试图选择退出BearerTokenAuthentication,这是OpaqueTokenAuthenticationProvider构建的Authentication类型。
我实现了一个OpaqueTokenIntrospector,它将内省结果转换为我选择的OAuth2AuthenticatedPrincipal(也是一个Authentication的实现),但后来它被OpaqueTokenAuthenticationProvider转换为BearerTokenAuthentication,我找不到如何更改此行为。
有线索吗?

编辑

开了一张罚单,道:https://github.com/spring-projects/spring-security/issues/11661

a7qyws3x

a7qyws3x1#

spring-security 5.8分支上的feature was merged
现在需要做的就是为资源服务器不透明令牌配置器提供一个OpaqueTokenAuthenticationConverter(或者webflux应用程序中的ReactiveOpaqueTokenAuthenticationConverter):

@Bean
    SecurityFilterChain filterChain(
        HttpSecurity http,
        OpaqueTokenAuthenticationConverter authenticationConverter) throws Exception {

        http.oauth2ResourceServer().opaqueToken()
                .authenticationConverter(authenticationConverter);

    return http.build();

相关问题