Заголовки: Content-Security-Policy-Report-Only
Заголовок Content-Security-Policy-Report-Only
Базовый уровень Широко доступно
Эта функция хорошо зарекомендовала себя и работает на множестве устройств и в разных версиях браузеров. Она доступна в браузерах с августа 2016 года.
HTTP-заголовок Content-Security-Policy-Report-Only ответа позволяет отслеживать нарушения политики безопасности содержимого (CSP) и их последствия без применения политик безопасности. Этот заголовок позволяет выявлять или устранять нарушения до того, как будет задана и применена конкретная Content-Security-Policy.
Для отправки отчетов необходимо указать директиву CSP report-to: в противном случае она не будет иметь никакого эффекта.
О нарушениях политики можно сообщать с помощью Reporting API. Отчеты можно отслеживать на странице, к которой применяется политика, с помощью ReportingObserver, а также отправлять на конечные точки сервера, определенные в HTTP-заголовке Reporting-Endpoints и выбранные с помощью директивы CSP report-to. Подробнее см. CSPViolationReport.
Дополнительные сведения см. в нашем руководстве по политике безопасности содержимого (CSP).
Примечание: Этот заголовок также можно использовать с устаревшей директивой report-uri (ее заменяет директива report-to). Синтаксис использования и получаемых отчетов немного отличается; подробнее см. в статье о report-uri.
| Тип заголовка | Заголовок ответа |
|---|---|
Этот заголовок не поддерживается внутри элемента <meta>. | |
Синтаксис
Content-Security-Policy-Report-Only: <policy-directive>; …; <policy-directive>; report-to <endpoint-name>
Директивы
Заголовок Content-Security-Policy-Report-Only поддерживает все директивы Content-Security-Policy, кроме sandbox, которая игнорируется.
Примечание: Вместе с этим заголовком следует использовать директиву CSP report-to, иначе она не будет иметь эффекта.
Примеры
>Отправка отчетов CSP с помощью Content-Security-Policy-Report-Only
Чтобы использовать директиву report-to, сначала необходимо определить соответствующую конечную точку с помощью заголовка ответа Reporting-Endpoints. В примере ниже мы определяем единственную конечную точку с именем csp-endpoint.
Reporting-Endpoints: csp-endpoint="https://example.com/csp-reports"
Затем мы можем задать место назначения отчета с помощью report-to и report-uri, как показано ниже. Обратите внимание: этот отчет будет создан, если страница загрузит ресурсы по небезопасному соединению или из встроенного кода.
Content-Security-Policy-Report-Only: default-src https:; report-uri /csp-report-url/; report-to csp-endpoint;
Примечание: Директива report-to предпочтительнее устаревшей директивы report-uri, но мы указываем обе, поскольку report-to пока не поддерживается всеми браузерами.
Спецификации
| Спецификация |
|---|
| Content Security Policy Level 3> # cspro-header> |
Совместимость с браузерами
| Настольные | Мобильные | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox для Android | Opera Android | Safari в iOS | Samsung Internet | WebView Android | WebView в iOS | |
Content-Security-Policy-Report-Only |
25 | 14 | 23 | 15 | 7 | 25 | 23 | 14 | 7 | 1.5 | 4.4 | 7 |
См. также
Content-Security-Policy- Директива CSP
report-to Reporting-EndpointsCSPViolationReport- Директива CSP
report-uri - Reporting API.
© 2005–2025 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/HTTP/Reference/Headers/Content-Security-Policy-Report-Only