【发布时间】:2021-08-29 16:26:50
【问题描述】:
假设成功登录后,我们正在传递用户短期访问令牌(15 分钟)和长期刷新令牌(7 天)。
在第 7 天,用户在我们的应用程序中处理一些业务逻辑,他的刷新令牌过期。因此,如果刷新令牌过期,他将在我们的应用中进行某些业务时被注销。
那么如何避免这种情况呢? 我们是否应该以某种方式更新刷新令牌?
【问题讨论】:
标签: authentication oauth-2.0 jwt refresh-token
假设成功登录后,我们正在传递用户短期访问令牌(15 分钟)和长期刷新令牌(7 天)。
在第 7 天,用户在我们的应用程序中处理一些业务逻辑,他的刷新令牌过期。因此,如果刷新令牌过期,他将在我们的应用中进行某些业务时被注销。
那么如何避免这种情况呢? 我们是否应该以某种方式更新刷新令牌?
【问题讨论】:
标签: authentication oauth-2.0 jwt refresh-token
会话到期是您需要编写代码的标准行为,因为刷新令牌不能也不应该永远持续下去。
如果用户让他们的浏览器在夜间运行,然后第二天早上返回应用程序,这种情况在工作设置中很常见。该逻辑通常涉及以下步骤:
即使用户正在提交表单,这也有效。需要注意的是,您当然不应该在 UI 存储中保存诸如信用卡号之类的高安全性字段 - 因此用户需要在从登录返回后重新输入这些值。
您可以很容易地实现这一点,就像在this sample code of mine 中一样,这可能会给您一些关于您自己的解决方案的想法。
【讨论】: