Générateur de Content Security Policy
Construisez visuellement des en-têtes CSP avec des modèles prédéfinis, des contrôles par directive, des avertissements de validation, un score de rigueur et un mode report-only.
Mis à jour le
Content Security Policy Builder
Visually build Content Security Policy headers with preset templates, per-directive controls, validation warnings, and strictness scoring.
Preset Templates
Use Content-Security-Policy-Report-Only header (monitors violations without enforcing)
0 directives enabled
Directives
Questions Fréquentes
Qu'est-ce que la CSP ?
Un en-tête HTTP qui contrôle quelles ressources un navigateur peut charger, empêchant ainsi les attaques XSS et par injection de données.
Appliquée ou en mode rapport seul ?
Le mode appliqué bloque les violations. Le mode rapport seul les autorise mais les signale, ce qui est utile pour faire des tests avant la mise en application.
Pourquoi éviter unsafe-inline/eval ?
unsafe-inline autorise des scripts en ligne exploitables. unsafe-eval permet l'exécution de code dynamique. Tous deux affaiblissent considérablement la protection de la CSP.
Le Constructeur de Content Security Policy est-il gratuit ?
Oui, le Constructeur de Content Security Policy est 100 % gratuit, sans inscription, sans frais cachés et sans limite d'utilisation. Tout le traitement se fait localement dans votre navigateur, garantissant une confidentialité totale.
Le Constructeur de Content Security Policy fonctionne-t-il sur les appareils mobiles ?
Oui, le Constructeur de Content Security Policy est entièrement responsive et fonctionne sur smartphones et tablettes. Vous pouvez l'utiliser sur n'importe quel appareil doté d'un navigateur web moderne, sans aucune application à télécharger.
Dois-je créer un compte pour utiliser cet outil ?
Aucun compte ni inscription n'est nécessaire. Ouvrez simplement le Constructeur de Content Security Policy dans votre navigateur et utilisez-le immédiatement. Il n'y a ni barrière d'inscription ni restriction d'utilisation.
Comment utiliser le Constructeur de Content Security Policy ?
Saisissez simplement vos données dans le champ prévu, ajustez les paramètres selon vos préférences, et l'outil les traitera instantanément. Vous pouvez ensuite copier le résultat dans le presse-papiers ou le télécharger.
Quels navigateurs sont pris en charge ?
Le Constructeur de Content Security Policy fonctionne dans tous les navigateurs modernes, dont Chrome, Firefox, Safari, Edge et Opera. Pour une expérience optimale, utilisez la dernière version de votre navigateur préféré.
Quelle est la différence entre default-src et script-src dans une CSP ?
default-src est la directive de repli : elle définit les sources autorisées pour tout type de ressource que vous n'avez pas configuré explicitement, si bien que la verrouiller sur 'none' ou 'self' crée une base de refus par défaut. script-src est une directive spécifique qui contrôle uniquement d'où le JavaScript peut être chargé, et elle prime sur default-src pour les scripts. Comme les scripts sont le principal vecteur du cross-site scripting, vous voudrez presque toujours un script-src strict même si default-src est déjà restrictif — par exemple default-src 'self' avec un script-src 'self' distinct auquel vous ajoutez un nonce. D'autres directives par type de ressource, comme style-src, img-src et connect-src, fonctionnent de la même façon, en restreignant un type de ressource pendant que default-src couvre le reste. Ce générateur vous permet de définir default-src une seule fois et de ne surcharger les directives individuelles que là où c'est nécessaire.
Comment ajouter un en-tête CSP sous Nginx ou Apache ?
Sous Nginx, vous ajoutez la politique dans un bloc server ou location avec add_header Content-Security-Policy "votre politique ici" always ; le drapeau always garantit que l'en-tête est envoyé même sur des réponses d'erreur comme les 404. Sous Apache, vous utilisez Header set Content-Security-Policy "votre politique ici" dans le VirtualHost concerné ou dans un .htaccess, avec mod_headers activé. Dans les deux cas, la valeur est la chaîne de directives complète, et vous devez recharger le serveur pour que cela prenne effet. Reproduire la syntaxe exacte à la main est source d'erreurs, c'est pourquoi ce générateur crée des extraits prêts à copier-coller pour Nginx, Apache, Express.js et Next.js à partir de la politique que vous configurez. Construisez vos directives visuellement, choisissez votre serveur, et collez le bloc généré directement dans votre configuration.
Pourquoi ne puis-je pas utiliser frame-ancestors ou report-uri dans une CSP en balise meta ?
Une CSP peut être délivrée de deux façons : comme en-tête de réponse HTTP Content-Security-Policy ou comme balise HTML <meta http-equiv="Content-Security-Policy"> dans l'en-tête de la page. La méthode par balise meta est pratique lorsque vous ne pouvez pas modifier la configuration du serveur, mais la spécification ignore volontairement certaines directives dans ce contexte. frame-ancestors, report-uri, report-to et sandbox ne fonctionnent que lorsqu'ils sont envoyés comme un véritable en-tête HTTP, car ils doivent être connus avant le rendu de la page ou concernent des rapports au niveau de la réponse. Si la protection contre le clickjacking compte pour vous, frame-ancestors doit provenir de l'en-tête, pas de la balise meta. Ce générateur vous permet de basculer entre les formats en-tête et meta et vous avertit des directives supprimées en mode meta, afin que vous n'expédiiez pas une politique qui perd silencieusement sa protection anti-clickjacking.
Comment fonctionne le score de rigueur et qu'est-ce qui fait monter la note d'une CSP ?
Chaque modification recalcule un score de rigueur sur 100, noté Faible, Correct, Bon ou Excellent. Le score valorise des choix réellement protecteurs plutôt que la simple présence d'une politique. Vous gagnez le plus de points pour un default-src restrictif ('none' fait mieux que 'self'), un script-src sans les mots-clés unsafe-inline ou unsafe-eval, object-src 'none', et un frame-ancestors défini. Ajouter base-uri, form-action, un style-src propre et d'autres directives de restriction fait encore progresser le chiffre, tandis que les sources en wildcard et les mots-clés unsafe le maintiennent bas. Activer le mode report-only fait légèrement baisser le score, puisqu'un en-tête report-only n'offre aucun blocage réel tant que vous n'appliquez pas la politique. L'onglet Analyse détaille précisément ce qui détermine votre score, afin que vous puissiez voir quels points faibles corriger pour passer de Bon à Excellent.
Qu'est-ce qu'un nonce ou un hachage dans une CSP, et quand faut-il l'utiliser à la place de unsafe-inline ?
Un nonce est un jeton aléatoire que votre serveur génère à chaque chargement de page et place à la fois dans la CSP et sur chaque balise <script> de confiance ; le navigateur n'exécute que les scripts portant le nonce correspondant. Un hachage fonctionne de façon similaire mais identifie un script inline précis par son empreinte sha256, sans qu'un jeton par requête soit nécessaire. Les deux vous permettent de conserver les scripts inline indispensables tout en supprimant 'unsafe-inline', qui autoriserait sinon l'exécution de n'importe quel script inline injecté et annulerait votre protection XSS. Associer un nonce à 'strict-dynamic' permet aussi aux scripts de confiance de charger leurs propres dépendances sans devoir mettre en liste blanche chaque domaine. Ce générateur propose des valeurs de source de type nonce et sha256 en modèle, et recommande de passer de unsafe-inline à une approche basée sur un nonce ou un hachage. Configurez ici script-src avec un espace réservé pour nonce, puis reliez le vrai jeton côté serveur.
Outils Associés
Test de vitesse de site web gratuit
Analysez le temps de chargement des pages, les indicateurs de performance et les pistes d'optimisation de votre site web. Gratuit, rapide et fonctionne entièrement dans votre navigateur, sans inscription.
Test de compatibilité mobile gratuit
Vérifiez si votre site est optimisé pour les appareils mobiles. Gratuit, rapide et fonctionne entièrement dans votre navigateur, sans inscription.
Extracteur de balises meta gratuit
Extrayez et examinez toutes les balises meta de n'importe quelle page web pour l'analyse SEO et réseaux sociaux. Gratuit, rapide et entièrement dans votre navigateur, sans inscription.
Outil de capture d'écran de site web gratuit
Capturez des captures d'écran pleine page ou de la fenêtre de n'importe quelle page web pour la revue de design et les tests. Gratuit, rapide et entièrement dans votre navigateur, sans inscription.
À propos du générateur de Content Security Policy
Le générateur de Content Security Policy transforme un en-tête de sécurité réputé fastidieux en un exercice de clic. Plutôt que d'écrire à la main une longue chaîne Content-Security-Policy en espérant que la syntaxe soit correcte, vous cochez les directives dont vous avez besoin, choisissez leurs sources autorisées, et l'outil assemble une politique valide pour vous, en temps réel. Il s'adresse aux développeurs, aux propriétaires de sites et aux équipes soucieuses de sécurité qui veulent se protéger des attaques XSS et par injection sans avoir à mémoriser toute la spécification CSP.
Une Content Security Policy est un en-tête de réponse HTTP qui indique au navigateur exactement quelles origines sont autorisées à charger des scripts, des styles, des images, des polices, des cadres (frames) et d'autres ressources. Lorsqu'une page tente de charger quelque chose que la politique n'autorise pas, le navigateur le bloque. Ce seul mécanisme neutralise la plupart des attaques de cross-site scripting (XSS), bloque l'exfiltration de données non autorisée et — grâce à frame-ancestors — protège contre le clickjacking.
Construisez une politique directive par directive
Le générateur expose 15 directives standard de fetch et de navigation, dont default-src, script-src, style-src, img-src, connect-src, frame-ancestors, base-uri, form-action et worker-src. Activez n'importe quelle directive et attribuez-lui des valeurs de source depuis une liste sélectionnée : des mots-clés comme 'self', 'none', 'strict-dynamic', des espaces réservés pour nonce et sha256, ainsi que des sources de schéma comme https:, data: et blob:. Vous pouvez aussi ajouter des domaines personnalisés (par exemple https://cdn.example.com ou *.example.com) pour autoriser votre CDN, vos outils d'analyse ou vos fournisseurs de médias intégrés.
Si vous préférez ne pas partir de zéro, six modèles prédéfinis préremplissent des configurations pertinentes :
- Basic Secure — une politique basée sur
'self'qui couvre les directives courantes - Strict — verrouille
default-srcsur'none'et n'autorise explicitement que ce qui est nécessaire - Permissive — un point de départ souple pour les sites anciens utilisant encore du code inline
- WordPress — prend en compte les scripts inline, Google Fonts et les intégrations YouTube/Vimeo
- Next.js — gère les besoins en inline et en eval du framework
- SPA (React/Vue) — ajusté pour les applications monopages et les workers blob
Notez votre politique et repérez ses points faibles
Chaque modification met à jour un score de rigueur sur 100, noté de Faible à Correct, Bon, puis Excellent. Le score valorise les choix réellement protecteurs — un default-src restrictif, un script-src sans mot-clé unsafe, object-src 'none', et un frame-ancestors défini — et l'onglet Analyse détaille précisément ce qui influence ce score.
Deux sources à risque sont signalées immédiatement. 'unsafe-inline' autorise des scripts inline exploitables et constitue la raison la plus fréquente pour laquelle une CSP échoue à bloquer le XSS ; 'unsafe-eval' autorise eval() et d'autres exécutions de code dynamique. Le générateur marque les deux avec des avertissements et propose des alternatives plus sûres basées sur des nonces ou des hachages. Les recommandations vous orientent aussi vers des directives protectrices manquantes comme base-uri et form-action.
Testez en toute sécurité, puis déployez sur n'importe quel serveur
Une CSP peut casser un site si une ressource légitime se retrouve bloquée, c'est pourquoi le générateur inclut un mode rapport seul (report-only). Celui-ci émet l'en-tête Content-Security-Policy-Report-Only, qui consigne les violations vers un point de collecte optionnel sans réellement rien bloquer — c'est la méthode recommandée pour valider une politique en production avant de passer en application stricte. Notez que cela fait légèrement baisser le score de rigueur, puisqu'un en-tête report-only n'offre aucune protection réelle tant que vous ne passez pas en mode d'application.
Une fois la politique prête, copiez-la sous forme d'en-tête HTTP brut ou de balise HTML <meta http-equiv> (l'outil vous rappelle que frame-ancestors, report-uri et sandbox ne peuvent pas être définis via une balise meta). Des extraits de code prêts à l'emploi sont générés pour Nginx, Apache, Express.js et Next.js, et vous pouvez télécharger le résultat sous forme de fichier.
Tout s'exécute entièrement dans votre navigateur. Aucune politique, aucun domaine ni aucune configuration n'est envoyé à un serveur, il n'y a pas d'inscription, et le générateur de Content Security Policy fonctionne sur tout navigateur moderne, y compris sur mobile.