首页 > 解决方案 > 在没有 OAuth2 的情况下刷新 JWT

问题描述

我在我的 Spring Boot 应用程序和 Spring Security 中使用 JWT 进行身份验证。问题是我无法在文件 application.properties 中声明的 jwt.expiration 时间之后刷新 JWT 令牌,因此用户在 30min 后注销。我需要 OAuth2 实施还是有任何其他快速而肮脏的方法来解决这个问题?

标签: angularspring-bootspring-securityjwt

解决方案


这是一个非常广泛的问题,但我会尝试为您指出正确的方向。

刷新令牌是授权服务器的业务。因此,您的应用程序需要与其中之一进行对话才能更新令牌。

我邀请您阅读OAuth 2.0以了解续订是如何发生的。具体来说,它们需要来自该授权服务器的refresh_token授权。

根据您的描述,您可能是一个 OAuth 2.0 客户端应用程序,在这种情况下,您最感兴趣的是Spring Security 的 OAuth 2.0 登录OAuth 2.0 客户端支持。

另外,我知道您没有问这个问题,但我也不鼓励您寻求“快速而肮脏”的解决方案。花点时间了解安全形势,它会在以后为您带来红利。


推荐阅读