Урок: прочитать причину блокировки ресурса политикой CSP
Сообщение CSP в консоли означает, что браузер ограничил действие по политике документа. В этом уроке вы найдёте нарушенную директиву и источник политики, не отключая защиту целиком.
Назначение
Сообщение CSP в консоли означает, что браузер ограничил действие по политике документа. В этом уроке вы найдёте нарушенную директиву и источник политики, не отключая защиту целиком.
Как это работает
Работайте на отдельной тестовой странице. Пример ниже — заголовок ответа, разрешающий ресурсы своего origin и ограничивающий базовый URL и встраивание. Он не является командой для изменения конфигурации действующего сайта.
Пример
Content-Security-Policy: default-src 'self'; script-src 'self'; style-src 'self'; base-uri 'none'; frame-ancestors 'none'
Что должно получиться
При попытке выполнить запрещённый встроенный скрипт браузер сообщит о нарушении script-src. В Network можно проверить фактически полученную политику. Report-Only фиксирует нарушения, но сам по себе не блокирует их.
Граница применения и частая ошибка
Не добавляйте unsafe-inline или * в ответ на любое предупреждение без анализа. Несколько действующих политик применяются совместно и могут усиливать ограничения. Frame-ancestors нельзя считать рабочим только из-за записи в meta: для него нужен заголовок ответа.
Самостоятельная проверка
В учебном проекте сравните разрешённый внешний файл своего origin и запрещённый inline-код. Запишите директиву, URL и строку ошибки. Затем исправьте конкретное подключение и повторите проверку вместо глобального ослабления политики.