【发布时间】:2012-08-18 08:50:28
【问题描述】:
我正在尝试使用 Microsoft Dynamics CRM Online,其中 Windows Azure 托管了一个自定义网页,该网页显示在 Microsoft Dynamics CRM Web 应用程序的 IFRAME 中。
我已阅读http://msdn.microsoft.com/en-us/library/gg509061(带有 Windows Azure 托管网页的 Microsoft Dynamics CRM Online)并遵循http://social.technet.microsoft.com/wiki/contents/articles/2590.aspx(使用访问控制服务 v2.0 的安全 Windows Azure Web 角色 ASP.NET Web 应用程序)上的说明
我现在有一个 Windows Azure 网页,其中显示了一个 Windows Live Id 屏幕以供登录。
问题是当我将它放入 Dynamics 中的 IFrame 时,我得到以下信息:
此内容无法在框架中显示 为帮助保护您输入本网站的信息的安全性,此内容的发布者不允许将其显示在框架中。
这是由于 Windows Live Id 登录服务的 HTTP 标头“X-Frame-Options:deny”阻止 Internet Explorer 在框架中显示页面。当我已经登录 Windows Live Id 并且网页尝试对我进行身份验证时,甚至会发生这种情况。
那么这意味着如何工作,因为第一个 Microsoft 页面暗示它可以通过“带有 Windows Azure 托管网页的 Microsoft Dynamics CRM Online”来完成,并且可以选择显示在 IFRAME 中?
【问题讨论】:
-
我可能有点离题,但我想知道您是否需要在您用来规避此问题的网站上使用 Windows Azure 访问控制服务来实现基于联合声明的身份,基本上是拥有您的网站通过 ACS 充当 Live Id 身份提供者的依赖方。当用户在 IFRAME 中搜索您的网页时,他们会被重定向到 Live ID、登录、基于声明的令牌被传回,动态在线是否接受?请注意,这可能有点矫枉过正,只是一个想法。我还没有测试过,相信有一个更简单的解决方案提醒你:)
-
你让它工作了吗?
-
@Stefan - 不,我没搞定。
标签: iframe azure dynamics-crm-2011 access-control x-frame-options