【发布时间】:2018-02-27 04:12:55
【问题描述】:
我正在创建 Angular 单页应用程序,并且我想将 JWT(JSON Web 令牌)与 OAUTH 2.0 一起使用。我正在阅读最佳实践,发现 OAuth 0 文章应该对它有帮助 https://auth0.com/docs/api-auth/which-oauth-flow-to-use。
我的应用程序应该能够登录用户并让他保持登录状态 60 天。我知道在浏览器中存储 60 天的访问令牌不是很安全,建议将其短暂保存。所以我想使用 Refresh Token 并将其存储在 HttpOnly Secure Cookie 中以不允许从客户端 Javascript 读取它,但是在这篇 auth0 文章中,他们说这是非常不安全的,SPA 不应该使用 Refresh 令牌,但他们没有描述为什么。
如果我的身份验证 API 代码交换端点在 JSON 响应中返回 access_token 但在 HttpOnly cookie 中返回 refresh_token 怎么办?这样我就不需要公开任何系统密钥,因为它们存储在身份验证后端 API 中。
有人可以提供更多信息并说明在 HttpOnly Secure cookie 中存储刷新令牌是否安全?
【问题讨论】:
标签: oauth-2.0 single-page-application