【问题标题】:Contents inside an iframe don't load at all or a warning shows up - iframe src is unsecured and different domain that the containing pageiframe 内的内容根本不加载或出现警告 - iframe src 不安全,并且与包含页面的域不同
【发布时间】:2013-10-26 08:17:21
【问题描述】:

我有一个来自https://creator.zoho.com 的网页,其中包含一个 iframe。 iframe scr 是 http://somedomain.example.com(注意它不是 https)。 iframe 内容包含 JQuery、SignalR 等脚本。

我在使用默认安全设置的操作系统和浏览器中出现以下行为:

Windows

  1. Internet Explorer - 没有问题,工作正常。
  2. Chrome - 根本不加载 iframe 上下文(我看到 iframe 的 DOM,它是空的)。地址栏右侧会出现一个盾牌图标,单击时会显示“该页面包含来自未经身份验证来源的脚本”。我有一个选项“加载不安全的脚本”。我点击它,一切正常。
  3. Firefox - 不在 iframe 中加载任何内容。没有安全指示,也没有任何警告。
  4. Safari - 没有问题,工作正常。

Mac 操作系统

  1. Chrome - 根本不加载 iframe 上下文(我看到 iframe 的 DOM,它是空的)。地址栏右侧会出现一个盾牌图标,单击时会显示“该页面包含来自未经身份验证来源的脚本”。我有一个选项“加载不安全的脚本”。我点击它,一切正常。

  2. Firefox - 根本不加载 iframe 上下文(我看到 iframe 的 DOM,它是空的)。地址栏的左侧会出现一个盾牌图标,点击后会出现一条与安全相关的消息。我有一个选项“加载不安全的脚本”。我点击它,一切正常。

  3. Safari - 根本不加载 iframe 上下文。没有安全警告。没有迹象表明有东西被阻止。

有人知道出了什么问题吗?

经过大量谷歌搜索后,我可以遇到 - https://developer.mozilla.org/en-US/docs/HTTP/X-Frame-Options - 但不太确定这是否适合我所有浏览器的情况,或者它是否适合任何浏览器的情况我正面临着。

提前感谢您阅读我的帖子。

【问题讨论】:

  • 出于安全原因,您不能混合使用 HTTP 和 HTTPS。不同的浏览器执行的方式不同。
  • 出于安全原因..
  • 知道为什么 chrome 在消息中显示“未验证”而不是“不安全”吗?
  • @SLaks 所以根据你的说法,如果 iframe 内容是从启用 SSL 的位置 (https) 加载的,他们会解决这个问题吗?
  • @MoizTankiwala:没错。未经身份验证意味着您没有证据证明远程服务器就是您认为的那个人。 en.wikipedia.org/wiki/CIA_triad#Authenticity

标签: javascript security dom iframe cross-browser


【解决方案1】:

通过将应用程序(在 iframe 中加载)移动到 HTTPS 解决了我的问题。所以现在父页面和 iframe 都在 HTTPS 上。他们仍然在不同的域上,但都是 HTTPS 为我解决了这个问题。

【讨论】:

    猜你喜欢
    • 2013-11-23
    • 1970-01-01
    • 1970-01-01
    • 2018-02-22
    • 2011-11-10
    • 1970-01-01
    • 2010-09-18
    • 2016-02-11
    • 1970-01-01
    相关资源
    最近更新 更多