Cette page a été traduite à partir de l'anglais par la communauté. Vous pouvez contribuer en rejoignant la communauté francophone sur MDN Web Docs.

View in English Always switch to English

En-tête Content-Security-Policy-Report-Only

Baseline Widely available

Cette fonctionnalité est bien établie et fonctionne sur de nombreux appareils et versions de navigateurs. Elle est disponible sur tous les navigateurs depuis août 2016.

L'en-tête de réponse HTTP Content-Security-Policy-Report-Only permet de surveiller les violations de la politique de sécurité du contenu (CSP) et leurs effets sans imposer les règles de sécurité. Cet en-tête vous permet de tester ou corriger les violations avant qu'un Content-Security-Policy soit appliqué et imposé.

La directive CSP report-to doit être définie pour que les rapports soient envoyés : sinon, l'opération n'aura aucun effet.

Les rapports de violation sont envoyés grâce à l'API de rapport vers les points de terminaison définis dans un en-tête HTTP Reporting-Endpoints et sélectionnés avec la directive CSP report-to.

Pour en savoir plus, consultez notre guide Politique de sécurité du contenu (CSP).

Note : Cet en-tête peut aussi être utilisé avec la directive obsolète report-uri (celle-ci est remplacée par report-to). L'utilisation et la syntaxe du rapport généré diffèrent légèrement ; consultez le sujet report-uri pour plus de détails.

Type d'en-tête En-tête de réponse
Cet en-tête n'est pas supporté au sein d'un élément HTML <meta>.

Syntaxe

http
Content-Security-Policy-Report-Only: <policy-directive>; …; <policy-directive>; report-to <endpoint-name>

Directives

L'en-tête Content-Security-Policy-Report-Only prend en charge toutes les directives Content-Security-Policy sauf sandbox, qui est ignorée.

Note : La directive CSP report-to doit être utilisée avec cet en-tête, sinon il n'aura aucun effet.

Exemples

Utiliser Content-Security-Policy-Report-Only pour envoyer des rapports CSP

Pour utiliser la directive report-to, vous devez d'abord définir un point de terminaison correspondant avec l'en-tête de réponse Reporting-Endpoints. Dans l'exemple ci-dessous, nous définissons un point de terminaison nommé csp-endpoint.

http
Reporting-Endpoints: csp-endpoint="https://example.com/csp-reports"

Vous pouvez ensuite définir la destination du rapport avec report-to et report-uri, comme illustré ci-dessous. Ce rapport serait déclenché si la page chargeait des ressources de façon non sécurisée ou depuis du code en ligne.

http
Content-Security-Policy-Report-Only: default-src https:;
  report-uri /csp-report-url/;
  report-to csp-endpoint;

Note : La directive report-to est à privilégier par rapport à la directive obsolète report-uri, mais nous déclarons les deux car report-to n'est pas encore prise en charge par tous les navigateurs.

Spécifications

Specification
Content Security Policy Level 3
# cspro-header

Compatibilité des navigateurs

Voir aussi