【发布时间】:2014-07-10 17:13:20
【问题描述】:
我想知道为什么 OAuth2 规范没有定义 JSON 响应模式来在隐式授权流中返回访问令牌。 是因为没有时间对此达成一致并指定它吗?或者以 JSON 格式返回访问令牌是否会打开某些安全漏洞?如果是这样,知道哪个会很有趣(我怀疑可以通过验证请求的 ContentType 或 RequestedWith 标头来缓解将 JSON 返回到恶意脚本标签中)。
有大量现代 javascript 应用程序需要刷新访问令牌。当受保护资源的权限经常更改时(例如,当某些用户向其他用户授予他们拥有的资源的权限时)通常需要这样做。在这种情况下,每次访问受保护的资源时都需要获取访问令牌。
目前 OAuth2 规范提供了 2 种响应模式:片段和表单发布(在草稿中)。 片段响应需要一个对用户不友好的重定向。也可以将带有方法 GET 的表单发布到隐藏的 iframe 中,该 iframe 将回调将访问令牌传递给父窗口的 javascript 代码。但从开发的角度来看,这是相当骇人听闻的方法。
通过 AJAX 请求以 JSON 格式返回访问令牌会更简洁,因为它不会损害安全性。
【问题讨论】:
标签: javascript oauth-2.0 openid