【发布时间】:2018-01-19 09:13:08
【问题描述】:
我正在尝试为基于 JavaScript 的应用程序实现 RFC 6749 (OAuth 2.0) 中描述的授权代码流程。我知道我应该使用 Web 服务器后端作为机密客户端,以便它可以保护授权服务器返回的访问令牌和刷新令牌,而不是将它们传递给 JavaScript 前端。然后从前端到任何受保护资源的所有请求都通过 Web 服务器后端,后端将访问令牌附加到请求并代理它。
我的问题是如何让 JavaScript 前端以安全的方式使用这些令牌?我假设我必须做一些事情,比如在 Web 服务器上设置一个会话并传回一个标识会话的 cookie。但这意味着 JavaScript 应用程序将拥有一个 cookie,该 cookie 赋予它们相同的权限,就好像它们可以直接访问存储在 Web 服务器中的不记名令牌一样。拥有一个 Web 服务器来保存令牌如何提供额外的安全性?
【问题讨论】:
-
你必须使用授权代码流程还是你只是选择它?
-
我需要支持刷新令牌和规范的section 4.2 说隐式授权类型不支持它们。