Как использовать frame-src и child-src в Firefox и других браузерах?

на MDN страница директив политики безопасности контента заявляет, что frame-src устарел и должен использоваться дочерний src. Однако Firefox 37 выдает следующее сообщение об ошибке при попытке использовать child-src

Content Security Policy: Couldn't process unknown directive 'child-src' <unknown>

это очевидное отсутствие поддержки не документировано (насколько я мог судить), что расстраивает. Есть ли какая-либо поддержка браузера?

В настоящее время я использую frame-src в дополнение к child-src, который, похоже, работает. Однако теперь мне интересно, есть ли какой-либо потенциал для конфликта между ними. Предположительно frame-src будет игнорироваться браузерами, поддерживающими child-src? Это гарантировано?

1 ответов


обновление: января 2017:

перестать использовать child-src и начать использовать frame-src еще раз.

в попытке создать еще больше путаницы, CSP Уровень 3 имеет undeprecated frame-src и фактически назначил его предпочтительным способом достижения этого. В то время как child-src по-прежнему поддерживается frame-src еще раз предпочтительнее.


старый пост

frame-src is устарел, но это было только недавно сделано так в CSP Level 2, и не все браузеры до последней версии спецификации.

лучший подход на данный момент для максимальной совместимости браузера, чтобы включить оба child-src и frame-src с одинаковыми значениями. Браузеры, которые поддерживают только исходную спецификацию CSP, будут использовать frame-src в то время как более новые будут использовать child-src.

это предупреждение консоли разработчика не имеет никакого значения и является просто информационным. Я бы посоветовал вам игнорировать его сейчас, потому что год отныне вы можете очень хорошо видеть, как говорят, что frame-src устарела.

в это время я гарантирую, что оба используются, когда это необходимо, и намерены прекратить предоставление frame-src в январе 2017 года.

поддержка уровня 2 CSP:

  • Firefox -до
  • хром - 40+
  • Опера - 27+
  • Microsoft Edge -до
  • сафари - 10+