【问题标题】:How to allow a specific domain to load in iFrame in Edge browser如何允许特定域在 Edge 浏览器的 iFrame 中加载
【发布时间】:2017-01-23 08:14:10
【问题描述】:

我有一个ASP.NetMVC application(名为app1.com)允许另一个域(名为app2.com) 将其加载到iframe
我已经使用 frame-ancestors app2.com 设置了 Content-Security-Policy 标头。

它在 ChromeFirefox 中运行良好。但它在 Edge 中不起作用。它说:

Content-Security-Policy 中的未知指令“frame-ancestors” - 指令将被忽略。

我曾尝试使用frame-src,但效果不佳。有人可以帮忙吗?

提前致谢

【问题讨论】:

    标签: asp.net iframe microsoft-edge content-security-policy


    【解决方案1】:

    首先,frame-ancestors 指令是now supported in Edge

    由于 CSP 的工作方式,未知指令会被忽略。这意味着如果不支持的浏览器看到 frame-ancestors 指令,无论框架页面是什么,它都会对页面进行框架 - 允许该页面对其进行框架(但不会阻止其他页面执行相同操作)。

    如果您只希望一个站点来构建页面,即使在旧浏览器中,您也可以像这样使用X-Frame-Options 标头:

    X-Frame-Options: ALLOW-FROM https://app2.com/
    

    支持 frame-ancestors 的浏览器在同一页面上同时使用 X-Frame-Options 时会忽略它们。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-06-21
      • 2016-06-29
      • 2011-12-13
      • 2017-01-23
      • 1970-01-01
      • 2011-02-16
      • 1970-01-01
      • 2020-08-15
      相关资源
      最近更新 更多