根据 JWT RFC,JWT 可以选择拥有一个 JTI,我将其解释为 JWT 的唯一 ID。似乎 UUID 对 JTI 来说是一个很好的价值。RFC 声称 JTI 可用于防止 JWT 被重放。两个问题:
- JTI 如何防止 JWT 被重放?
- JTI 字段应该多久重新生成一次?对每一个要求?还是仅在生成新令牌时?
“jti”(JWT ID)声明为 JWT 提供了唯一标识符。
标识符值的分配方式必须确保相同的值被 意外分配给不同的数据对象
的可能性可以忽略不计;
如果应用程序
使用多个发行者,则必须防止
不同发行者产生的值之间的冲突。“jti”声明可用于
防止 JWT 被重放。“jti”值是
区分大小写的字符串。使用此声明是可选的。