首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用Windows Identity Foundation在iframe中验证外联网网站

使用Windows Identity Foundation在iframe中验证外联网网站
EN

Stack Overflow用户
提问于 2013-01-24 22:47:35
回答 1查看 2.4K关注 0票数 1

场景:在我的公司外联网上,必须通过iframe显示一些网站。外联网使用SSL和基于Active Directory的Windows身份验证。每个iframe的网站都需要一个经过认证的用户,但这是一个要求,用户不应该被要求手动登录。每个网站的认证机制尚未确定。

问题:我需要找出如何在iframes中实现自动登录。我可以要求iframe的网站使用符合我的目的的特定身份验证机制,尽管我确实需要向它们提供来自AD的特定用户信息。

有人建议我使用Windows Identity Foundation来解决身份验证难题。我正在考虑两个解决方案,但作为WIF新手,我不确定哪一个更好,以及它们是否可行。

解决方案1:使用AD声明创建自定义安全令牌服务。当用户浏览到我的某个iframe页面时,该页面以编程方式从STS获取一个令牌,并以某种方式将该令牌添加到iframe。看着网上的示例,我相信我知道如何构建STS并以编程方式获取令牌。但是如何将其与iframe一起使用呢?将其插入iframe URL (http://website/default.aspx?token=xxx)似乎并不安全。

解决方案2:我创建了相同的STS。iframe的网站被配置为使用STS作为认证提供者。当用户浏览我的iframe页面时,iframe的网站会自动向STS查询令牌,并让用户登录。但是iframe的web部件如何获取令牌--原始用户在请求上下文中是否可用,或者它是如何工作的?这能在iframe中完成吗--我记得我读过一些关于不允许在iframe中使用cookie的文章。

对以上问题的回答--或者可能是不同的解决方案--是最受欢迎的。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-01-25 21:10:14

2.如果iframe中的页面(从现在起依赖方RP)被配置为使用STS作为身份验证提供者,那么在第一次加载时,它们会将浏览器( iframe)重定向到STS。STS知道用户allready具有单个signon会话(从最初登录到外联网),并且因此发布会话令牌,该会话令牌作为HTTP POST传递给依赖方,该HTTP POST被WIF拦截并以cookie的形式传递给客户端(默认情况下,这可以使用自定义会话令牌处理程序来覆盖)。一些浏览器最初不允许在iframes中使用p3p,但是通过在来自依赖方的响应中发送cookie报头,可以允许这样做。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14504039

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档