问题标签 [x-frame-options]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1182 浏览

php - X-Frame-Options:从 Facebook 应用程序在 Twitter 上发布

我希望能够从我目前正在开发的 Facebook 应用程序中发布用户 Twitter 提要,但似乎遇到了麻烦。当我调用我的 tmhOAuth PHP 脚本来验证 Twitter 上的请求权限时,我收到以下错误:

当直接从浏览器调用 TmhOAuth 时,它可以完美运行。它在 Facebook iframe 内失败的标头函数。

知道发生了什么吗?

0 投票
3 回答
29201 浏览

javascript - 拒绝显示文档,因为 X-Frame-Options 禁止显示

我正在构建一个 Facebook 应用程序,我注意到当尝试使用他们的 Javascript API 获取用户的登录状态时,我有时会收到错误消息:

“拒绝显示文档,因为 X-Frame-Options 禁止显示。”

每次我点击应用程序的“检查登录状态”页面时,我都能够重现这一点,只是在使用 Facebook 作为页面而不是我的用户帐户时。这很容易避免,因为我知道这会导致问题,但显然我的用户可能不知道这一点。

有没有办法确定用户是否将 Facebook 用作主页?因为这似乎几乎毁了我的整个应用程序。

0 投票
1 回答
1647 浏览

google-app-engine - Google App 引擎上的 Facebook Canvas 应用程序 - 拒绝显示文档,因为 Google Chrome 中的 X-Frame-Options 禁止显示

我正在尝试在 Google App 引擎上构建一个带有后端的应用程序。它在 Firefox 3.6、Firefox 6、IE 9 上运行良好。但在 Google Chrome 17.0.963.83m 上,它失败并显示“拒绝显示文档,因为 X-Frame-Options 禁止显示。”。我尝试在另一台计算机上的谷歌浏览器(相同版本)上打开我的应用程序,虽然它抛出了同样的错误,但应用程序成功启动。尝试清除缓存等。

我在开发人员工具中的标题喜欢这样 -

没有 x-frame-options:SAMEORIGIN 或 DENY。无法弄清楚为什么会失败。有什么解决办法吗?

我已经尝试了答案https://stackoverflow.com/a/6767901/1291712。据说它需要为相同的标题选项设置 2 个值。具体来说 -

我使用django-nonrel作为 web 框架。我不知道如何在 django 中为同一个标头设置两个值。我尝试将其设置为“GOFORIT”和“SAMEORIGIN,GOFORIT”,但没有成功。

我还能尝试调试和解决什么?请帮忙。

0 投票
1 回答
484 浏览

javascript - Facebook 评论导致 iPhone 和 iOS 版 Safari 中出现 javascript 错误

我对 Facebook 评论有疑问,它不适用于 iPhone 版 Safari。Facebook 评论在大多数浏览器中运行良好,但在 iPhone 上的 Safari 中出现 Javascript 错误。

我在这里创建了一个最小的测试用例,它显示了问题: http ://www.pvv.ntnu.no/~andrearo/fotball.html

我在 iPhone 上的 Safari 中收到以下错误消息:

“拒绝显示文档,因为 X-Frame-Options 禁止显示”。

有人可以就如何让这个 Facebook 评论在 iPhone 版 Safari 上工作提供一些建议吗?

0 投票
3 回答
227224 浏览

firefox - X-Frame-Options:Firefox 和 chrome 中的 ALLOW-FROM

根据这篇文章,我正在实施“传递”,X-Frame-Options让合作伙伴网站将我雇主的网站包装在 iframe 中:http: //blogs.msdn.com/b/ieinternals/archive/2010/03/30 /combating-clickjacking-with-x-frame-options.aspx

(拆分 URLS 发布)

简而言之,我们合作伙伴的页面有一个 iframe,其中包含针对我们域的 URL。对于我们域中的任何页面,他们都会添加一个特殊的 url 参数,例如&@mykey=topleveldomain.com,告诉我们页面的顶级域是什么。

我们的过滤器从 URL 中提取合作伙伴 TLD(如果提供),并根据白名单对其进行验证。如果它在列表中,我们会发送X-Frame-Options带有值的标题ALLOW-FROM topleveldomain.com(并添加一个 cookie 以供将来点击)。如果它不在我们的白名单上,我们会发货SAMEORIGINDENY.

ALLOW-FROM domain问题在于,对于最新的 Firefox 和 Google Chrome,它看起来像是以无操作的方式发送结果。至少,IE8 似乎正确地实现了ALLOW-FROM.

查看此页面: http ://www.enhanceie.com/test/clickjack 。在“应该显示内容”的第 5 个(共 5 个)框之后,是一个不应该显示内容的框,但它是。在这种情况下,iframe 中的页面正在发送X-Frame-Options: ALLOW-FROM http://www.debugtheweb.com一个与http://www.enhanceie.com. 然而,框架仍然显示内容。

X-Frame-Options关于是否真正ALLOW-FROM跨相关(桌面)浏览器实现的任何见解?也许语法已经改变?

一些感兴趣的链接:

0 投票
1 回答
3896 浏览

oauth-2.0 - iframe/popup 中的 Google oauth2 授权

我的应用程序在 iframe 中工作(注入了 chrome 扩展)。该应用程序需要使用 google oauth2 向用户询问一些权限。由于 X-Frame-Options: SAMEORIGIN at https://accounts.google.com/o/oauth2/auth,重定向到 oauth-page 不能直接在 iframe 中工作

有没有办法在弹出窗口中显示页面?

0 投票
1 回答
8030 浏览

ruby-on-rails - X-Frame-Options ALLOW-FROM 特定站点允许所有

我正在使用 rails 应用程序来提供来自 abc.com 的页面。在其中,我在我的应用程序控制器中设置了响应标头(对于通过 before_filter 的每个请求),以便只能通过以下代码从特定站点(xyz.com)通过 iframe 访问它:

问题是,我不仅可以从 xyz 上的 abc.com 访问该页面,还可以在任何其他网站上访问该页面。我想限制对 xyz.com 的访问。当我检查 chrome 控制台中的响应标头时,我可以看到 X-Frame-Options 正在正确传递。这发生在所有浏览器中。我错过了什么吗?

0 投票
1 回答
803 浏览

security - 如何在 QtWebKit 中禁用 X-Frame-Options

我对 QtWebKit 的安全性有疑问,我想禁用 X-Frame-Options,这样我就可以在我的应用程序内的 iframe 中嵌入 facebook.com 等网站。

我知道可以使用 WebCore API(isWebSecurityEnabled 开关,http ://trac.webkit.org/wiki/ConfigurableFeatures )来实现,但我没有找到任何使用 QtWebKit 的方法。

谢谢!

0 投票
1 回答
1754 浏览

iframe - 带有 Windows Azure 托管网页 + IFrame + X-Frame-Options 的 Microsoft Dynamics CRM Online

我正在尝试使用 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 中?

0 投票
5 回答
82832 浏览

php - X-Frame-Options SAMEORIGIN 在我的域上阻止 iframe

我正在使用http://www.jacklmoore.com/colorbox在灯箱中显示 url 的内容。实施后,彩盒没有显示任何内容。

后来,我注意到 chrome 日志中出现以下错误:

所以在记录之后,我将以下行添加到网站的根 .htaccess 中:

允许 iframe 嵌入到我自己的域中。

但我仍然得到错误,我是 x-frame 的新手,我正在开发一个现有的应用程序,所以我认为 .htaccess 解决方案会很好,但它可以被一些代码覆盖吗?请注意,它不在服务器配置中。