【发布时间】:2018-04-05 02:18:28
【问题描述】:
使用 OpenID Connect 隐式流,授权服务器在成功认证后重定向回客户端。 location 标头将包含令牌作为 url 片段 (#id_token=xyz)。
这可以防止令牌从用户代理通过引用或类似方式泄漏到包含的资源。
但是,如果 javascript 文件等第三方资源包含在重定向目标页面中,则这些脚本将通过文档位置访问令牌。
在包含第 3 方资源时,保护客户端令牌的最佳做法是什么?例如。您通常会实现一个“受限”重定向目标,在再次重定向之前将 url 片段交换为 cookie?
更新
更清楚一点:根据@janhalasa 的回答,攻击场景不包含不受信任的 javascript。攻击线是更不经意的令牌泄漏,例如将文档 uri 传输到外部服务器(谷歌分析?)的图书馆。通过将哈希片段移动到会话存储中,它不会被意外泄露。
【问题讨论】:
标签: google-analytics identityserver3 openid-connect