CentralCSP
FonctionnalitésGénérateur CSP

Démarrer

Créez une CSP depuis vos reports avec le générateur CSP. Choisissez une période et une politique de départ, revoyez les sources, puis déployez en report-only.

Dernière mise à jour:

Cette page vous mène des reports que votre site collecte déjà à une politique de sécurité du contenu (CSP) déployée en mode report-only, puis appliquée.

Revoyez chaque valeur et déployez d'abord en report-only

Le générateur propose des valeurs à partir de ce que les navigateurs ont reporté, et ses réglages par défaut conservent tout ce que vos pages chargent aujourd'hui, y compris des valeurs risquées et des scripts que vous ne reconnaissez peut-être pas. Revoyez les valeurs avant de déployer une nouvelle politique, en commençant par les signalements de risque et les sources de scripts que vous ne connaissez pas. Une politique issue de l'API ou de l'outil MCP applique les mêmes réglages par défaut, sans revue, alors vérifiez-la de la même façon.

Déployez toujours une nouvelle politique d'abord avec le header Content-Security-Policy-Report-Only. Passez à Content-Security-Policy seulement quand au moins une semaine de reports montre que rien de ce dont vos pages ont besoin ne serait bloqué.

Avant de commencer

Vérifiez que vous disposez de :

  • Un plan qui collecte les reports de violation CSP. Comparez les plans.
  • Un site qui envoie ses reports CSP à CentralCSP. La page Violations CSP doit afficher des données. Si votre site n'envoie encore aucune politique, le générateur part de la base CentralCSP. Consultez Connecter votre site.
  • Un accès à la configuration du serveur, du framework ou du réseau de diffusion de contenu (CDN) qui définit vos headers de réponse.

Choisissez la durée de la période à analyser avant de commencer. Une période plus longue capte les pages que peu de visiteurs ouvrent, comme le paiement ou les paramètres du compte.

Gardez l'onglet ouvert jusqu'à l'export

Le générateur n'enregistre rien. L'étape, la période et la politique de départ restent dans l'adresse de la page, mais vos décisions d'ajout et de rejet n'existent que dans la page ouverte. Recharger ou fermer l'onglet les efface.

1. Choisir les reports à analyser

Pour choisir la période :

  1. Dans la barre latérale du site, allez dans Générateurs > Content-Security-Policy.
  2. À l'étape Période, sélectionnez Aujourd'hui, 7 jours, 14 jours ou 30 jours. Pour toute autre plage dans les 30 derniers jours, faites plutôt glisser la souris sur le graphique des reports.
  3. Vérifiez les trois compteurs : Rapports, Sources trouvées et Semblent être du bruit.
  4. Sélectionnez Continuer.

La période par défaut est de 7 jours. Aujourd'hui correspond au jour calendaire en cours dans votre fuseau horaire, pas aux dernières 24 heures. Un site qui envoie un très gros volume de reports est limité à 7 jours à la fois.

Si la période ne contient aucun report, la page affiche Aucun rapport sur cette période. Choisissez une période plus longue, ou continuez et partez de la base.

Le générateur CSP à l’étape Période, avec 7 jours sélectionnés, le graphique des reports et les compteurs Rapports, Sources trouvées et Semblent être du bruit

2. Choisir une politique de départ

La page liste la base CentralCSP, puis jusqu'à six politiques sous Détectée sur votre site. L'option marquée Recommandé est sélectionnée par défaut.

Pour choisir la politique de départ :

  1. À l'étape Politique de départ, lisez le libellé de chaque politique détectée :
    • Politique en service : très probablement la politique que vous servez aujourd'hui.
    • Politique partielle : une partie de votre site, une copie de préproduction ou un second header.
    • Ancienne politique : aucun report depuis deux jours, probablement remplacée.
  2. (Facultatif) Pour lire la politique complète d'une option, sélectionnez Détails.
  3. Pour conserver ce qui fonctionne aujourd'hui, sélectionnez la politique en service. Pour partir d'une politique stricte qui n'autorise encore rien, sélectionnez Base CentralCSP.
  4. Sélectionnez Continuer.

L’étape Politique de départ, avec la base CentralCSP et trois politiques détectées, la politique en service sélectionnée et marquée Recommandé

Quand vous partez d'une politique détectée, le générateur conserve toutes ses valeurs et ajoute ce que la base contient et qui lui manque. Consultez La base CentralCSP.

3. Revoir les sources

Le tableau liste chaque valeur de la politique que vous construisez. Chaque ligne est déjà tranchée : les sources dont vos pages ont besoin sont ajoutées, le bruit est rejeté.

Pour revoir le tableau :

  1. À l'étape Revue des sources, réglez le filtre des signalements sur Bruit.
  2. Vérifiez chaque ligne de bruit. Si l'une d'elles contient un hôte que votre site utilise réellement, sélectionnez Ajouter.
  3. Réglez le filtre des signalements sur chaque niveau de risque, en commençant par le plus grave.
  4. Pour lire ce qu'autorise une valeur risquée et comment la retirer plus tard, sélectionnez sa ligne.
  5. (Facultatif) Sélectionnez Rejeter sur les valeurs dont vous êtes sûr que vos pages n'ont plus besoin.
  6. Sélectionnez Continuer.

La table de revue triée par directive, avec les boutons Auto et Exporter, une ligne rejetée grisée et un signalement de risque élevé sur unsafe-inline

Pour remettre chaque décision sur la recommandation du générateur, sélectionnez Auto. Pour chaque colonne, filtre et encadré, consultez Tableau de revue.

4. Déployer en mode report-only

Pour déployer la politique :

  1. À l'étape Déployer, laissez le mode sur Signalé (report-only).
  2. Dans le bloc de code, copiez les deux headers, ou sélectionnez Exporter en TXT.
  3. Si la page affiche Remplacez {RANDOM} à chaque réponse, votre politique utilise un nonce. Générez une nouvelle valeur aléatoire pour chaque réponse, et placez-la dans le header et dans l'attribut nonce de chaque balise script. Consultez Nonces et unsafe-inline.
  4. Ajoutez les deux headers à chaque réponse HTML que renvoie votre site. Pour le code propre à chaque framework, consultez Définir le header CSP dans chaque framework.

Les headers ressemblent à cet exemple :

Reporting-Endpoints: centralcsp="https://e0123456789abcdef0123.report.centralcsp.com", default="https://e0123456789abcdef0123.report.centralcsp.com"
Content-Security-Policy-Report-Only: default-src 'self'; script-src 'self' 'report-sample' 'report-sha256' https://cdn.example.com; style-src 'self' 'report-sample'; object-src 'none'; base-uri 'self'; form-action 'self'; frame-ancestors 'none'; upgrade-insecure-requests; report-uri https://e0123456789abcdef0123.report.centralcsp.com; report-to centralcsp

La directive report-to centralcsp envoie les reports au groupe que déclare le header Reporting-Endpoints. Les onglets Politique et Constats notent la politique avec l'évaluateur CSP.

L’étape Déployer en mode Signalé, avec les headers Reporting-Endpoints et Content-Security-Policy-Report-Only et l’onglet Politique

Les navigateurs reportent désormais ce que la politique bloquerait, sans le bloquer.

5. Passer en mode bloquant

Pour appliquer la politique :

  1. Surveillez la page Violations CSP pendant au moins une semaine. Chaque report signifie désormais que la politique bloquerait quelque chose.
  2. Quand plus rien de ce dont vos pages ont besoin n'apparaît dans les reports, relancez le générateur sur cette semaine. La politique que vous avez déployée est désormais la politique en service, partez donc de celle-ci.
  3. À l'étape Déployer, sélectionnez Appliquer.
  4. Remplacez le header report-only par le header Content-Security-Policy.

Les navigateurs bloquent désormais ce que la politique n'autorise pas. Pour les compromis entre les deux modes, consultez CSP enforce ou report-only.

Étapes suivantes

On this page