2014-09-25 62 views
-1

这个问题真正解决了跨域对本地主机的请求,与此同时由于缺乏对本地网络的控制(设置DNS或其他解决方案),安全网站访问本地服务的问题。具体来说,Safari和Chrome允许混合访问本地主机,而FF 23+则不支持。如何解决Firefox 23+中的localhost混合内容限制?

我们不想给用户带来不便,并强迫他们使用单个浏览器。

  1. 我们可以使用JSONP访问普通HTTP服务器从网页上运行的本地主机安全投放? (我们最初的实验说这可以工作)

  2. 其他浏览器制造商是否会仿效FF和本地主机混合内容访问?

FF有一个功能要求一年以上,没有什么事情发生,除了大量的讨论。请参阅:https://bugzilla.mozilla.org/show_bug.cgi?id=903966

我们的感觉是,其他浏览器也会加强安全性。

+1

看看[这个问题](http://stackoverflow.com/questions/613962/is-jsonp-safe-to-use)关于JSONP安全性的一些讨论。就我个人而言,我没有看到浏览器如何停止支持它,因为它与简单的脚本请求到第三方域的请求并没有多大区别,这将始终得到支持。 – 2014-09-25 15:33:05

+0

为什么你想要编程一个替代协议? CORS +适当的标记语言是完全正确的。 – Bergi 2014-09-25 15:45:08

+0

感谢您的意见和downvote。我调整了这个问题来弥补。 – 2014-09-30 07:41:54

回答

0
  1. 。您无法使用JSONP来克服FF 23+上localhost的混合内容限制。最初的实验是错误的,FF一贯地应用其混合内容规则。 我发现了一个很不错的文件[1]这基本上概述了以下可能性:

    • 使用完全合格的域名证书和DNS域后缀搜索。这带有成本
    • 使用企业/专用CA(本地证书颁发机构)颁发并信任非唯一名称的证书
    • 在自签名证书中手动设置信任 - 让用户将证书导入浏览器。
    • 使用IPSec
    • 此外,还可以编程为FF

插件
  • 如果检查该线程在Mozilla中,https://bugzilla.mozilla.org/show_bug.cgi?id=844556#c58有一个与IE的Intranet模式相比较,这会给用户和开发者带来问题,因为它是非标准的,并且因为其他原因而被讨论。我预计大部分制造商都会跟进。
  • [1] HREF = “https://www.globalsign.com/resources/white-paper-internal-server-names-ip-address-requirements.pdf”