Spec-Zone.ru › HTTP

Заголовки: Integrity-Policy-Report-Only

Заголовок Integrity-Policy-Report-Only

Ограниченная доступность

Эта функция не входит в Baseline, так как она не работает в некоторых наиболее широко используемых браузерах.

Хотите, чтобы эта функция поддерживалась шире? Расскажите нам почему.

  • Подробнее
  • Полная информация о совместимости
>

HTTP-заголовок ответа Integrity-Policy-Report-Only позволяет администраторам веб-сайтов получать отчёты о ресурсах, загружаемых пользовательским агентом, которые нарушили бы гарантии целостности подресурсов, если бы политика целостности применялась (с помощью заголовка Integrity-Policy).

О нарушениях политики можно сообщать с помощью Reporting API. Отчёты можно просматривать на странице, к которой применяется политика, используя ReportingObserver, а также отправлять на конечные точки сервера, заданные в HTTP-заголовке ответа Reporting-Endpoints и выбранные с помощью поля endpoints. Подробнее см. IntegrityViolationReport.

Заголовок позволяет разработчикам тестировать политики целостности и устранять проблемы с содержимым, прежде чем в конечном итоге развернуть заголовок Integrity-Policy для применения политики.

Тип заголовка Заголовок ответа

Синтаксис

Integrity-Policy-Report-Only: blocked-destinations=(<destination>),sources=(<source>),endpoints=(<endpoint>)

Значения заголовка задаются в виде словарей структурированных полей со следующими ключами:

blocked-destinations

Список назначений запросов, для которых должны быть указаны действительные метаданные целостности. Допустимые значения:

script

Ресурсы скриптов.

style

Ресурсы таблиц стилей.

sources Необязательно

Список источников целостности, для которых должны быть указаны метаданные целостности. Допустимые значения:

inline

Источник метаданных целостности находится непосредственно в содержимом, например в атрибуте integrity. Это значение используется по умолчанию.

Поскольку это значение используется по умолчанию и является единственным, отсутствие sources эквивалентно указанию sources=(inline).

endpoints Необязательно

Список имён конечных точек для отправки отчётов, указывающих, куда будут отправляться отчёты. Конечные точки для отправки отчётов должны быть определены в заголовке Reporting-Endpoints.

Примеры

>

Отправка отчётов, если у скриптов отсутствуют метаданные целостности

В этом примере показан документ, который отправляет отчёт на конечную точку сервера, если какой-либо элемент <script> (или HTMLScriptElement) не содержит атрибут integrity или если запрашивается ресурс скрипта в режиме no-cors.

Обратите внимание, что integrity-endpoint, используемое в Integrity-Policy-Report-Only, задано в заголовке Reporting-Endpoints.

Reporting-Endpoints: integrity-endpoint=https://example.com/integrity, backup-integrity-endpoint=https://report-provider.example/integrity
Integrity-Policy-Report-Only: blocked-destinations=(script), endpoints=(integrity-endpoint backup-integrity-endpoint)

Полезная нагрузка отчёта может выглядеть так. Обратите внимание, что свойство body.reportOnly имеет значение true, так как этот отчёт был создан в результате нарушения Integrity-Policy-Report-Only.

{
  "age": "176279",
  "type": "integrity-violation",
  "url": "https://example.com",
  "body": {
    "documentURL": "https://example.com",
    "blockedURL": "https://example.com/main.js",
    "destination": "script",
    "reportOnly": "true"
  },
  "user_agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/145.0.0.0 Safari/537.36"
}

Спецификации

Спецификация
Subresource Integrity>
# integrity-policy-section>

Совместимость с браузерами

Настольные компьютеры Мобильные устройства
Chrome Edge Firefox Opera Safari Chrome Android Firefox для Android Opera Android Safari на iOS Samsung Internet WebView Android WebView на iOS
Integrity-Policy-Report-Only 138 138
145Отчёты endpoints игнорируются (нарушения регистрируются в консоли).
122 26 138
145Отчёты endpoints игнорируются (нарушения регистрируются в консоли).
91 26 Нет 138 26
blocked-destinations_script 138 138 145 122 26 138 145 91 26 Нет 138 26
blocked-destinations_style Нет Нет 142 Нет Нет Нет Нет Нет Нет Нет Нет Нет

См. также

  • Integrity-Policy
  • Reporting-Endpoints
  • ReportingObserver
  • IntegrityViolationReport
  • Политика целостности в разделе Subresource Integrity
  • 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/Integrity-Policy-Report-Only

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API