我有一些用户正在使用有效的jwt令牌访问一些api,但由于他们的任务比令牌过期时间花费更多的时间,当他们再次访问api时,jwt令牌已经过期。他们不应该刷新他们的令牌,他们必须使用相同的令牌,甚至使用过期的令牌访问一些API。
我正在使用 spring.security.oauth2.resourceserver
通过我们的授权服务器进行身份验证。
因此,我试图实现的是,如果令牌来源是正确的,并且具有良好的格式,那么即使令牌过期,我也需要接受请求。
是的,我知道这似乎不是一个好方法,但如果这是可能的,请教育我。
我已经读过了 ClientHttpRequestInterceptor
从这里跳转到的源代码 resource server
但是找不到合适的方法。
1条答案
按热度按时间hi3rlvi21#
我完全建议您不要这样做,因为如果某个恶意用户从某人处窃取jwt,他将能够永远请求受保护的资源,因为令牌不会过期。在这种情况下,您应该做的是刷新令牌,请转到文档以刷新访问令牌。
但出于知识目的,可以提供一个自定义
JwtDecoder
这可以按照您想要的方式验证jwt。你应该暴露一个秘密@Bean
同类JwtDecoder
根据您的特定配置,如下所示:您可以在文档中找到更多详细信息。