【问题标题】:WIF and passive federation, cookie accessWIF 和被动联合、cookie 访问
【发布时间】:2012-01-02 18:51:33
【问题描述】:

关于被动联合,我想知道从 STS 到依赖方的安全令牌传输是如何工作的。 在几乎每篇关于 Windows Identity Foundation 和被动联合的文章中,都说浏览器重定向(顺便说一下,是 30x http 代码吗?)和 cookie 是唯一使用的“工具”。 但是:当 STS 将令牌存储在 cookie 中,然后将浏览器重定向到依赖方时,依赖方怎么可能读取到这个 cookie?是不是有类似 cookie 的同源策略(就像 javascript 一样)? cookie 的发布者 (STS) 是依赖方之外的另一个地址/源/域,是否仍然允许依赖方访问这个“外部”cookie,或者是后台的某种魔法使之成为可能?

谢谢

【问题讨论】:

    标签: .net federated-identity wif federation


    【解决方案1】:

    STS 不发送 cookie,这是不可能的。

    相反,STS 会向您的浏览器返回一个包含以下内容的页面: a) 页面正文中的 SAML 令牌 (XML) b) action=Relying Party url + javascript 自动提交表单

    浏览器很乐意将这样的表单提交给依赖方。然后它负责创建用于验证来自客户端的连续请求的身份验证 cookie。

    没有“魔法”,只是在请求正文中明确传递的 SAML 令牌。令牌由 STS 证书签名,因此 RP 可以验证其真实性。

    【讨论】:

    • 谢谢你,这是有道理的。
    • 对于其他发现这一点并感到好奇的人,如果 Javascript 关闭,通过 Javascript 自动提交的表单将优雅地降级并显示一个提交按钮供用户手动单击。您可以关闭 JS 并使用 Chrome Dev Tools 等检查工具自行测试以查看中间形式。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-11-10
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多