2

我了解跨站点脚本 (xss) 不好,并且在大多数浏览器中不受支持。但是,我正在构建一个仅供我公司内大约 3 或 4 人使用的页面。在这个页面上,我有一个来自另一个域的框架,我需要父页面才能访问该框架中的值。

所以我的问题是,有没有办法(更改设置等)在 Firefox 或 IE7 中允许这种情况发生?最好(尽管不一定)任何设置更改都明确针对我的域。

我在网上找到了一些帮助,说在 FF 中你可以添加 capability.policy 来允许这样做。不过我没有运气,也许FF3不支持。

4

3 回答 3

1

对于那些寻找的人来说,有一种很好的向后兼容的、仅限 javascript 的跨域通信方式。简短、简单的代码也是如此。完美解决方案?只要您对父母和孩子提出修改请求:

http://www.onlineaspect.com/2010/01/15/backwards-compatible-postmessage/

于 2010-11-23T00:29:08.233 回答
0

我头顶的几个想法:

  • 在 IE 中,您可以更改站点所在安全区域的设置。我建议您将域添加到“受信任的站点”,然后确保为受信任的站点区域启用“跨域访问数据源。” . 你可以在这里找到更多信息

  • 如果您有一个可以控制的域名,也许您可​​以设置指向不同框架中站点的子域?从而欺骗网络浏览器他们是同一站点的一部分?

  • 如果您喜欢编码,您可以创建一个使用 IE 浏览器控件并实现其自己的 IInternetSecurityManager ( http://msdn.microsoft.com/en-us/library/ms537130(VS.85).aspx ) 的自定义应用程序,它允许跨域脚本访问。

于 2009-05-08T22:08:43.207 回答
0

另一种选择是设置代理页面,使页面看起来源自同一个域。代理页面可能非常容易受到 XSS 的攻击,具体取决于实现。即使您说这不是问题,但重要的是要考虑。

于 2009-05-08T22:53:54.843 回答