如何为在不同主机但相同二级域上投放的iframe强制Chrome进行“站点隔离”?

时间:2019-01-25 15:11:28

标签: google-chrome chromium

我有一个在http://foo.example.com/page投放的页面,该页面嵌入了一个在http://bar.example.com/iframe投放的iframe。 出于性能方面的考虑,我想使用Chrome的“网站隔离”(自Chrome 67起默认启用)在与首页不同的线程中呈现iframe。

但是,只有在主页和iframe分别位于不同的第二级域(例如foo.example.com和bar.otherexample.com)上投放时,这种“网站隔离”行为才似乎会触发

chrome:// process-internals /#web-contents上的调试页面显示以下内容:

如果foo.example.com上的网页/ bar.otherexample.com上的iframe:

Frame: locked, site:http://example.com/ | url: http://foo.example.com/page
└ Frame: locked, site:http://otherexample.com/ | url: http://bar.otherexample.com/iframe

两个框架具有不同的“站点”->我可以在Chrome的任务管理器中为iframe看到单独的“子框架:站点:http://otherexample.com/”过程。

如果foo.example.com上的页面/ bar.example.com上的iframe:

Frame: locked, site:http://example.com/ | url: http://foo.example.com/page
└ Frame: locked, site:http://example.com/ | url: http://bar.example.com/iframe

两个框架具有相同的“站点”-> iframe没有“子框架”过程。

有什么办法可以暗示Chrome将foo.example.com/page和bar.example.com/iframe视为不同的“站点”吗?

(FWIW,在我的浏览器中打开的其他随机选项卡上,我确实看到“子帧”进程被拆分为帧,其中“站点”列为https://content.googleapis.com/https://accounts.google.com/- ,但考虑到三级域名。尽管它们恰好是Google URL,所以我不知道这是否是某些特定的硬编码行为?)

0 个答案:

没有答案