【发布时间】:2020-03-14 20:17:27
【问题描述】:
我们的 Nativescript Angular 应用程序有一个问题。我们将 OAuth 2 与 PKCE 一起用于我们的身份验证过程,但我的团队对移动开发领域还很陌生。
根据我的研究,最佳实践似乎表明刷新令牌的生命周期应该在 2 周到 2 个月之间。目前我们的访问令牌生命周期设置为 2 分钟,我们的刷新令牌生命周期为 30 分钟。这意味着我们的用户必须每 30 分钟使用他们的用户名和密码登录一次,这对于 UX 来说并不理想,我们也因此受到了很多批评。
我们的登录页面使用 WebView,因此我们还考虑尝试使用安全存储的用户名和密码版本自动填充表单字段,但后来意识到这实际上无法做到,而且对安全性不利。
因此,为了改进登录过程并使其更加无缝,我们希望设置带有 PIN 码后备的面部/触摸 ID。这意味着我们必须将刷新令牌的生命周期延长到 2 个月或尽可能长——这似乎是向前推进的最佳方法。
也就是说,另一个问题是我们还有一个使用相同身份验证服务器的网站,因此如果我们更改 Keycloak 设置,它也会为网站更改它,这将为网络团队创造更多工作。
所以我的问题是我们应该使用单独的身份验证服务器仅用于移动访问吗?
【问题讨论】:
标签: mobile oauth-2.0 access-token keycloak refresh-token