java - 是否可以在没有刷新令牌的情况下检查 JWT 有效性?
问题描述
由于某些原因,我不能在客户端上使用刷新令牌,是否可以在 ResourceServer 上实现 RemoteTokenServices 以便它检查令牌是否在身份验证服务器上被撤销,但从 JWT 令牌本身而不是身份验证服务器获取身份验证信息,如用户详细信息,就像使用 uuid 令牌的默认实现一样?
upd:这个问题不是重复的,它是关于 JS 和一般方法的,我对我解释的方法很好,我想知道是否以及如何使用 spring boot 和 spring security 来实现它。
解决方案
JWT 由三个部分组成:
- 标头#info关于使用的算法
- 有效载荷#contains数据,这对你的情况很重要
- 签名#基本上是此列表中前两项的哈希
您应该在此处阅读有关 Payload(和 JWT 本身)的信息https://jwt.io/introduction
长话短说,您可以在有效负载中包含公共数据。如果涉及到提到的RemoteTokenServices
- 当然,你可以这样做,但我不确定这是否是一个好主意。您可以将公共expiration-date
(或expires
)属性添加到有效负载。
另外,看看这个:https ://jwt.io/