是否有任何方法可以更改或阻止 window.location.ancestorOrigins
的使用在 Chrome 下的 iframe 网站中?
出于安全原因,我不希望 iframe 页面能够检测到顶部 url。
在 Firefox 下,如果 <iframe>
指向另一个<iframe>
,它解决了问题。
但在 Chrome 下,它仍在检测主网站。
最佳答案
没有。而这个讨论从2016年就开始了! https://github.com/whatwg/html/issues/1918
这就是当 Google 广告资金资助 Chrome 开发时您会得到的结果。
另请注意,在 Chrome 上,您可以通过 DefineProperty() 覆盖 document.referrer,但不能覆盖 window.location.ancestorOrigins。他们确实关心该属性,但不足以尊重其内容安全策略 ́\_(ツ)_/́
@seanonymous(新帐户,尚无法在此处回复评论)的用例是某些网站在 URL 中公开了他们不希望合作伙伴看到的信息。例如,CNN 可能会利用谷歌或 Facebook 来获取登录信息。他们很好地与那些公司分享用户正在阅读 cnn.com,以换取他们评论部分的授权流程。但他们可能不愿意将用户希望评论的文章分享给这些公司。十年前,W3c 通过 CSP 和引用控制 header 解决了这个问题。但谷歌在没有任何人评论的情况下实现了这一点,就像微软在 IE4~6 市场统治期间所做的那样。
关于javascript - 更改 window.location.ancestorOrigins,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26046030/