更改tokenendpoint中默认的url

更改tokenendpoint中默认的url

一、首先自己写个类AuthServerConfig去继承AuthorizationServerConfigurerAdapter类

二、复写方法configure(AuthorizationServerEndpointsConfigurer endpoints)

三、在方法中设置endpoints.pathMapping("/oauth/authorize", urlPrefix+"/oauth/authorize"),前一个路径为默认路径,后一个为你希望替换的路径。urlPrefix这个是我自己设置的全局字符串。

下面展示一些 内联代码片

// An highlighted block
@Configuration
@EnableAuthorizationServer
public class AuthServerConfig extends AuthorizationServerConfigurerAdapter
{
    @Autowired
    private AuthenticationManager authenticationManager;

    @Autowired
    private DataSource dataSource;

    @Autowired
    private RedisConnectionFactory redisConnectionFactory;

    @Resource
    private UserDetailsService userDetailsService;

    @Autowired
    private TokenEnhancer tokenEnhancer;

    @Value(ModuleUrlConstants.AUTH_PREFIX)
    private String urlPrefix;
    /**
     * 定义授权和令牌端点以及令牌服务
     */
    @Override
    public void configure(AuthorizationServerEndpointsConfigurer endpoints)
    {
        endpoints
                // 请求方式
                .allowedTokenEndpointRequestMethods(HttpMethod.GET, HttpMethod.POST)
                // 指定token存储位置
                .tokenStore(tokenStore())
                // 自定义生成令牌
                .tokenEnhancer(tokenEnhancer)
                // 用户账号密码认证
                .userDetailsService(userDetailsService)
                // 指定认证管理器
                .authenticationManager(authenticationManager)
                // 是否重复使用 refresh_token
                .reuseRefreshTokens(false)
                // 自定义异常处理
                .exceptionTranslator(new CustomWebResponseExceptionTranslator())
                .pathMapping("/oauth/authorize", urlPrefix+"/oauth/authorize")
                .pathMapping("/oauth/token", urlPrefix+"/oauth/token")//替换路径为customPath = /auth/oauth/authorize
                .pathMapping("/oauth/confirm_access", urlPrefix+"/oauth/confirm_access")
                .pathMapping("/oauth/error", urlPrefix+"/oauth/error")
                .pathMapping("/oauth/check_token", urlPrefix+"/oauth/check_token")
                .pathMapping("/oauth/token_key", urlPrefix+"/oauth/token_key")
        ;

        DefaultTokenServices tokenServices  = new DefaultTokenServices();
        tokenServices .setClientDetailsService(clientDetailsService());
//        tokenServices .setAccessTokenValiditySeconds(1);
//        tokenServices .setRefreshTokenValiditySeconds(1);//ClientDetails中设置了过期时间,这里的无效
        tokenServices .setSupportRefreshToken(true);
        tokenServices .setTokenStore(endpoints.getTokenStore());
        tokenServices .setTokenEnhancer(endpoints.getTokenEnhancer());
        endpoints.tokenServices(tokenServices );
    }
}
  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值