如何在Firefox和其他浏览器中使用frame-src和child-src?

Chr*_*isD 30 firefox content-security-policy

内容安全策略指令MDN页面声明不推荐使用frame-src,应该使用child-src.但是,当我尝试使用child-src时,Firefox 37会出现以下错误消息

Content Security Policy: Couldn't process unknown directive 'child-src' <unknown>
Run Code Online (Sandbox Code Playgroud)

这种明显的缺乏支持没有记录(据我所知),令人沮丧.有没有记录浏览器支持的地方?

目前我正在使用frame-src以及child-src,它似乎有用.不过,我现在想知道两者之间是否存在任何冲突可能性.推测支持child-src的浏览器会忽略frame-src?这有保证吗?

ant*_*an1 42

更新: 2017年1月:

停止使用child-srcframe-src再次开始使用.

为了制造更多的混淆,CSP Level 3尚未初步化,frame-src并且实际上已将其重新命名为实现此目标的首选方式.虽然child-src仍然支持frame-src再次优先考虑.


老帖子

frame-src 弃用,但它最近才因此在CSP 2级,而不是所有的浏览器都达到规范的最新版本.

目前最佳的浏览器兼容性方法是同时包含child-srcframe-src使用相同的值.仅支持原始CSP规范的浏览器将frame-src在较新的规范中使用child-src.

该开发者控制台警告没有任何后果,仅仅是信息性的.我建议你现在忽略它,因为从现在起一年你可能会看到一个frame-src被弃用的说法.

在这个时候,我确保在需要时使用这两个并且打算frame-src在2017年1月停止提供.

CSP 2级支持:

  • Firefox - 待定
  • Chrome - 40+
  • 歌剧 - 27+
  • Microsoft Edge - 待定
  • Safari - 10+