java – 版本2.0中带有自定义TokenGranter的Spring Security OAuth2.

在以前版本的OAuth2中,可以通过将自定义令牌Granter添加到< authorization-server>中的xml配置来添加它.元件.

我想知道如何使用AuthorizationServerConfigurerAdapter使用Java Config扩展授权服务器,而不会丢失包含隐式,客户端凭据,刷新令牌和授权代码授权类型的默认配置.

首次尝试使用@Component创建TokenGranter:

@Component("customTokenGranter")
public class CustomTokenGranter {
     //implementation
}

这导致依赖性解决异常,因为构造Granter所需的tokenServices无法自动装配.

第二次尝试使用configure方法

@Override
public void configure(AuthorizationServerEndpointsConfigurer endpoints) throws Exception
{
    endpoints
        .tokenGranter(new CustomTokenGranter(endpoints.getTokenServices(),endpoints.getClientDetailsService(),endpoints.getOAuth2RequestFactory()));

}

使用此选项,将不会注册默认授权类型.

我也尝试了低阶的第二种配置,但没有成功.
我还可以做些什么来添加自定义授权类型?

最佳答案
您还需要添加默认值,例如使用CompositeTokenGranter:

        List

相关文章

这篇文章主要介绍了spring的事务传播属性REQUIRED_NESTED的原...
今天小编给大家分享的是一文解析spring中事务的传播机制,相...
这篇文章主要介绍了SpringCloudAlibaba和SpringCloud有什么区...
本篇文章和大家了解一下SpringCloud整合XXL-Job的几个步骤。...
本篇文章和大家了解一下Spring延迟初始化会遇到什么问题。有...
这篇文章主要介绍了怎么使用Spring提供的不同缓存注解实现缓...