JWT身份验证,除非设置ClockSkew

时间:2019-09-06 13:25:33

标签: .net jwt

我遇到了一个问题,我花了时间研究它之后,过期的令牌(寿命为20秒)仍可以工作约4-5分钟,我发现这是因为ClockSkew默认设置为5分钟,将其设置为0,就没有其他问题。

我希望我的jwt的寿命在1到5分钟之间,并且有一个持续数周的刷新令牌,因此jwt会不断刷新。 但是我想知道,为什么ClockSkew设置为5分钟(我认为这是值)。而且由于我将其更改为0,它会导致什么错误?

1 个答案:

答案 0 :(得分:1)

ClockSkew的一种有用情况是,当您拥有2台身份验证服务器时,您如何知道它们是同步的?如果第一个提示未过期,然后第二个过期,该怎么办?这显然会引起问题。因此,通常在设置时会考虑到多个身份验证服务器的时间。

对此有一个很好的解释: https://softwareengineering.stackexchange.com/questions/245173/how-much-time-should-you-allow-for-clock-skew/245182#245182

如果您仅使用1个身份验证服务器(大多数情况下),这将不会造成任何问题,并且使您的测试更加轻松,因为您不必每次都等待5分钟。