Bearer error="invalid_token", error_description="之前令牌无效

时间:2021-06-22 16:05:15

标签: jwt

我的情况是,当我们多次测试用户登录和注销时,我们随机收到错误 -

日期:2021 年 6 月 22 日,星期二 13:58:41 GMT WWW-Authenticate: Bearer error="invalid_token", error_description="该令牌在 '06/22/2021 13:58:42' 之前无效"

dot net core 中的后端 API,我们在其中生成和验证 JWT 令牌,

1 个答案:

答案 0 :(得分:0)

您的令牌具有 nbf (JWT Not Before) Claim,当使用 nbf 验证令牌时,当前时间必须等于或晚于该时间戳。这些时间戳是以秒为单位的 UNIX 时间戳。

可能发生的事情是

  • 当您使用 nbf 生成这些令牌时,声明值会被限制到最接近的秒数,而不是被限制。
  • 您的时钟可能在生产者和消费者之间出现偏差

在这两种情况下,推荐的方式都在 RFC 中描述

<块引用>

实施者可以 提供一些小的余地,通常不超过几分钟,以 考虑时钟偏差。

可能存在某些验证选项,例如时钟偏差或时钟容差,您需要将其设置为某个可接受的值,例如5 秒以适应微小的时钟偏差或地板/天花板差异。