访问令牌和刷新令牌的生命周期

3

这个应用程序旨在被公司用于管理公司间文件。这些文件可能包含有价值的信息,因此必须是一个安全的应用程序。我正在使用带访问和刷新令牌的Oauth2。访问令牌有效期为15分钟,刷新令牌有效期为1天。

  • 15分钟的AT和1天的RT是否合适?如果是,为什么这些值已足够好,或者不够好?
  • 对于必须真正安全的应用程序,AT和RT的最佳生命周期是多少?

非常感谢!


注意:以上内容已经翻译完毕,保留原有html标签,仅供参考。
1个回答

1

Gmail与银行账户的区别。

我不确定你的业务属于哪一类。你应该和产品团队开会,解释发生了什么,并让他们决定。如果需要尝试几次才能找到正确的数字也没关系。

但是对于Gmail而言,刷新令牌几乎永远不会过期。我想不起上次需要再次输入我的凭据是什么时候了。

对于银行而言,刷新令牌似乎只有10分钟的有效期,如果你将银行应用程序放到后台,则无法获取新的刷新令牌,因此你会被注销。就像我的美国银行应用程序一样。如果我保持应用程序打开,则应用程序将继续刷新令牌。

显然,刷新令牌的过期时间应该大于平均用户的会话时间。


如果我的应用程序更接近银行...访问令牌的生命周期应该是多长时间?如果刷新令牌应该设置为10分钟? - Sirdhemond
我发现刷新令牌的生命周期应该是:RT = AT 的生命周期 * 2;所以如果我选择15分钟作为访问令牌的生命周期,那么30分钟的刷新令牌就足够了吗? - Sirdhemond
1
我理解保密性的重要性,但是10分钟的刷新时间去阅读多个文件的文档是不好的。想象一下,如果你去了另一个标签页,然后回来发现你之前滚动到的位置已经消失了。我想你的用户需要比简单的银行支票更多的时间。我在这里找到了一个建议:将您的访问令牌过期时间设置为平均会话持续时间的两倍。 - mfaani
刷新令牌的有效期不应该超过1-3小时(取决于数据的分类程度),特别是对于敏感信息。可以将刷新令牌的过期时间视为“用户与应用程序交互的最长可接受持续时间,但如果用户回来了,则无需再次登录,因为他们可以立即刷新其刷新令牌”。对我而言,“RT = AT寿命* 2”非常严格(有些网站的AT为30分钟-RT为200天)。但我确实意识到您的数据很敏感。 - mfaani

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接