auth服务生产的token不过期

Blade 未结 1 2032
1325162854
1325162854 剑圣 2020-07-15 22:25

一、该问题的重现步骤是什么?

1. 根据/oauth/token接口password模式生成获取的token,没有过期时间限制,可以无期限使用

2. 修改客户端表access_token_validity字段也无效

3.


二、你期待的结果是什么?实际看到的又是什么?

1.auth鉴权服务里的BladeAuthorizationServerConfiguration设置读取jdbc客户端表

/**
 * 配置客户端信息
 */
@Override
@SneakyThrows
public void configure(ClientDetailsServiceConfigurer clients) {
   BladeClientDetailsServiceImpl clientDetailsService = new BladeClientDetailsServiceImpl(dataSource);
   clientDetailsService.setSelectClientDetailsSql(AuthConstant.DEFAULT_SELECT_STATEMENT);
   clientDetailsService.setFindClientDetailsSql(AuthConstant.DEFAULT_FIND_STATEMENT);
   clients.withClientDetails(clientDetailsService);
}


2.上述步骤/oauth/token接口能正常获取到token,但是获取的jwt token能无期限使用,与实际不符合

3.然后有个疑问,所有业务接口都走网关服务,而网关服务和auth鉴权服务没有关联,我看网关服务的AuthFilter只有判断token是否缺失,咋们的系统是在哪里判断oauth2生成的token是否过期了呢(客户端表设置的access_token_validity时间)


image.png


三、你正在使用的是什么产品,什么版本?在什么操作系统上?

bladex,  


四、请提供详细的错误堆栈信息,这很重要。


五、若有更多详细信息,请在下面提供。

1条回答
  • 生成的token是有过期时间的,JwtUtil方法底层,会自动判断过期

    image.png

    image.png

    0 讨论(0)
提交回复