Генератор заголовка Content-Security-Policy

Собирайте заголовок Content-Security-Policy директива за директивой, с чипами источников и готовыми к копированию фрагментами meta, nginx и Apache. Всё работает в вашем браузере.

Генератор CSP работает целиком в вашем браузере. Директивы, хосты и схемы, которые вы вводите для сборки вашей Content-Security-Policy, никогда не покидают ваше устройство и не загружаются в ArrayKit.

Открыть генератор заголовка Cache-Control

Об инструменте Генератор CSP

Генератор CSP собирает заголовок Content-Security-Policy по одной директиве за раз. Заполните default-src, script-src, style-src, img-src, connect-src, font-src, frame-src и другие, кликая по чипам источников вроде 'self', 'none', 'unsafe-inline', data: и https:, или вводя пользовательские хосты такие как cdn.example.com. Источники-ключевые слова берутся в одинарные кавычки за вас, а хосты и схемы остаются без них, так что политика всегда корректна. Пустые директивы отбрасываются автоматически, и всё выводится в каноническом порядке. Переключите тумблер report-only, чтобы протестировать политику в режиме мониторинга перед тем, как применять её, затем скопируйте сырой заголовок, HTML мета-тег или готовые к вставке фрагменты nginx и Apache. Создан для разработчиков, укрепляющих сайт против XSS и кликджекинга, прямо в браузере — собранная политика никогда не покидает ваше устройство.

Возможности

Как использовать Генератор CSP

  1. Кликайте по чипам источников или вводите хост, чтобы добавить источники в каждую нужную директиву
  2. Оставьте ненужные директивы пустыми — они отбрасываются из вывода
  3. Переключите Report-Only, если хотите мониторить нарушения перед применением
  4. Скопируйте значение заголовка Content-Security-Policy или фрагмент meta, nginx или Apache

Пример

Ввод

default-src: 'self'
script-src: 'self' https:
img-src: 'self' data:
object-src: 'none'

Результат

Content-Security-Policy: default-src 'self'; script-src 'self' https:; img-src 'self' data:; object-src 'none'

Ключевые слова вроде 'self' берутся в кавычки; схемы такие как https: и data: остаются без них.

Частые ошибки и устранение неполадок

Часто задаваемые вопросы

Что производит этот генератор CSP?
Он собирает полное значение заголовка Content-Security-Policy из выбранных вами директив и источников, затем даёт вам сырой заголовок, HTML мета-тег и фрагменты add_header nginx и Apache, которые вы можете вставить в свою конфигурацию.
Какие источники CSP берутся в одинарные кавычки, а какие нет?
Источники-ключевые слова вроде 'self', 'none', 'unsafe-inline', 'unsafe-eval' и 'strict-dynamic', плюс nonce и хеши, берутся в одинарные кавычки. Хосты и схемы такие как https:, data: и cdn.example.com остаются без них. Инструмент заключает их в кавычки правильно за вас.
Для чего нужен переключатель report-only?
Он переключает имя заголовка на Content-Security-Policy-Report-Only, который сообщает о нарушениях, ничего не блокируя. Используйте его, чтобы обкатать новую политику на живом сайте и наблюдать за консолью перед тем, как применять её.
Можно ли доставить всю политику как мета-тег CSP?
В основном да — инструмент выдаёт тег <meta http-equiv> для применяющей политики. Но frame-ancestors, report-uri, report-to и sandbox игнорируются в мета-теге, поэтому используйте фрагмент HTTP-заголовка, когда ваша политика опирается на них.
Почему заголовок опускает директивы, которые я не заполнил?
Директивы без источников отбрасываются, чтобы вывод оставался чистым и корректным. default-src действует как запасной вариант для любой директивы выборки, которую вы оставили пустой, так что вам нужно переопределять только те, что отличаются.
Отправляет ли сборка заголовка CSP мои хосты куда-либо?
Нет. Генератор CSP работает целиком в вашем браузере. Директивы и хосты, которые вы вводите, остаются на вашем устройстве и никогда не загружаются в ArrayKit.

Связанные инструменты

Все инструменты ArrayKit