处理刷新令牌过期的策略

发布于 2025-01-10 04:56:18 字数 274 浏览 1 评论 0原文

我正在制作一个 React 应用程序并使用 JWT 进行身份验证。 用户登录后,我会发出一个访问令牌并设置一个名为 jwt 的仅 http cookie,其值为刷新令牌。根据我在网上阅读的一些文章,建议访问令牌的有效期较短,而刷新令牌的有效期较长,因此我将访问令牌的有效期设置为1天,刷新令牌的有效期为25天,(数字不是很相关的)。现在,一旦刷新令牌过期,用户就会自动注销。

现在我正在开发的应用程序是一个数据输入仪表板,我不希望用户在输入大量数据后突然注销,即使这种情况每月发生一次,所以我想知道管理这种情况的行业标准

I am making a react application and using JWT for authentication.
As soon as a user logs in I issue a access token and set a http only cookie named jwt and value is refresh token. As per some articles I have read online it is suggested that access token have a short validity and refresh token have a long validity, so I set validity of access token to be 1 day and refresh token to be 25 days, (numbers are not very relevant). Now as soon as refresh token expires The user is automatically logged out.

Now the app I am developing is a data entry dashboard and I do not want the user to suddenly logout after entering a lot of data even if that happens once a month, so I want to know the industry standard to manage this kind of situation

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

━╋う一瞬間旳綻放 2025-01-17 04:56:18

有一种方法可以在没有登录密码对的情况下更新刷新令牌:

  1. 当刷新令牌过期时,客户端必须获取新的令牌对(访问令牌、刷新令牌)。
  2. 客户端发送其访问和刷新令牌并接收一对新令牌(就像使用用户名:密码进行身份验证时一样)。
  3. 您应该跟踪刷新令牌的到期时间以防止其重复使用。

它与您的流程一样安全,因为当客户端注销时,它知道其他人已经使用过其刷新令牌一次。因此它必须使用用户名:密码进行身份验证并使最后的刷新令牌无效。

我发现一篇文章解释了这个流程

There is a way to update refresh token without login-password pair:

  1. When a refresh token expires a client have to get a new token pair (access, refresh tokens).
  2. The client sends its access AND refresh tokens and receives a new pair (just like when authenticating with username:password).
  3. You should track expiry of refresh tokens to prevent their reuse.

It is as safe as your flow because when a client gets logged out it understands that someone else already used its refresh token once. So it has to authenticate using username:password and invalidate the last refresh token.

I found an article explaining this flow

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文