Générateur de Politique de Sécurité du Contenu

Générez des en-têtes CSP pour protéger contre les attaques XSS et l'injection de code. Inclut des préréglages de sécurité et des configurations Nginx, Apache et HTML meta.

Préréglages de Sécurité

Configurer les Directives

fetch Directives

default-src

Fallback for other fetch directives

Examples: 'self', 'self' https:, 'none'
script-src

Sources for JavaScript execution

Examples: 'self', 'self' 'unsafe-inline', 'self' https://cdn.example.com
style-src

Sources for stylesheets

Examples: 'self', 'self' 'unsafe-inline', 'self' https://fonts.googleapis.com
img-src

Sources for images

Examples: 'self', 'self' data:, 'self' https: data:
font-src

Sources for fonts

Examples: 'self', 'self' https://fonts.gstatic.com, 'self' data:
connect-src

Sources for XHR, WebSocket, and EventSource

Examples: 'self', 'self' https://api.example.com, 'self' wss:
media-src

Sources for audio and video

Examples: 'self', 'self' https://media.example.com, 'none'
object-src

Sources for plugins (object, embed, applet)

Examples: 'none', 'self', 'self' https://plugins.example.com
frame-src

Sources for nested browsing contexts (iframe)

Examples: 'self', 'none', 'self' https://www.youtube.com
worker-src

Sources for Worker, SharedWorker, or ServiceWorker

Examples: 'self', 'none', 'self' blob:
manifest-src

Sources for web app manifests

Examples: 'self', 'none', 'self' https://cdn.example.com

document Directives

base-uri

Restrict URLs for <base> elements

Examples: 'self', 'none', 'self' https://example.com

navigation Directives

form-action

Restrict form submission URLs

Examples: 'self', 'none', 'self' https://api.example.com
frame-ancestors

Restrict embedding this page in frames

Examples: 'none', 'self', 'self' https://trusted.example.com

reporting Directives

report-uri

URL to send CSP violation reports

Examples: https://example.com/csp-report, /csp-violation-endpoint

Politique de Sécurité du Contenu Générée

Politique CSP

default-src 'self'; script-src 'self'; style-src 'self'; img-src 'self'; font-src 'self'; connect-src 'self'; media-src 'self'; object-src 'none'; frame-src 'self'; worker-src 'self'; manifest-src 'self'; base-uri 'self'; form-action 'self'; frame-ancestors 'self'

En-tête HTTP

Content-Security-Policy: default-src 'self'; script-src 'self'; style-src 'self'; img-src 'self'; font-src 'self'; connect-src 'self'; media-src 'self'; object-src 'none'; frame-src 'self'; worker-src 'self'; manifest-src 'self'; base-uri 'self'; form-action 'self'; frame-ancestors 'self'

Meta Tag HTML

<meta http-equiv="Content-Security-Policy" content="default-src 'self'; script-src 'self'; style-src 'self'; img-src 'self'; font-src 'self'; connect-src 'self'; media-src 'self'; object-src 'none'; frame-src 'self'; worker-src 'self'; manifest-src 'self'; base-uri 'self'; form-action 'self'; frame-ancestors 'self'">

Configuration Nginx

add_header Content-Security-Policy "default-src 'self'; script-src 'self'; style-src 'self'; img-src 'self'; font-src 'self'; connect-src 'self'; media-src 'self'; object-src 'none'; frame-src 'self'; worker-src 'self'; manifest-src 'self'; base-uri 'self'; form-action 'self'; frame-ancestors 'self'";

Configuration Apache

Header always set Content-Security-Policy "default-src 'self'; script-src 'self'; style-src 'self'; img-src 'self'; font-src 'self'; connect-src 'self'; media-src 'self'; object-src 'none'; frame-src 'self'; worker-src 'self'; manifest-src 'self'; base-uri 'self'; form-action 'self'; frame-ancestors 'self'"

Télécharger la Configuration

Conseils de Sécurité

  • Commencez par le mode Rapport Uniquement pour identifier les changements problématiques
  • Évitez 'unsafe-inline' et 'unsafe-eval' quand c'est possible
  • Utilisez des nonces ou des hashes pour les scripts/styles inline
  • Révisez et mettez à jour régulièrement votre CSP au fil de l'évolution de votre site
  • Surveillez les rapports de violation CSP pour détecter attaques et mauvaises configurations
  • Utilisez 'strict-dynamic' avec des nonces pour les implémentations CSP modernes

Share this tool

Help others discover Content Security Policy Generator

À Propos de Cet Outil

Comment Ça Fonctionne

  • Configurez les directives CSP pour contrôler le chargement des ressources
  • Utilisez des préréglages de sécurité pour les niveaux de sécurité courants
  • Générez des en-têtes pour divers serveurs web
  • Testez avec le mode Rapport Uniquement avant l'application

Cas d'Usage Courants

  • Prévenir les attaques XSS et l'injection de code
  • Contrôler le chargement des ressources tierces
  • Implémenter une sécurité en profondeur
  • Se conformer aux meilleures pratiques de sécurité

Questions Fréquentes

Qu'est-ce qu'une Politique de Sécurité du Contenu (CSP) et pourquoi en ai-je besoin ?

CSP est une fonctionnalité de sécurité qui aide à prévenir les attaques de scripting intersites (XSS) et l'injection de données en contrôlant quelles ressources peuvent être chargées sur votre site. Elle agit comme une couche de sécurité supplémentaire contre l'exécution de code malveillant.

Quelle est la différence entre le mode d'application et le mode rapport uniquement ?

Le mode d'application bloque activement les violations de votre politique CSP, tandis que le mode rapport uniquement les enregistre sans les bloquer. Utilisez d'abord le mode rapport pour tester votre politique avant de l'appliquer sur votre site.

Quel préréglage de sécurité choisir ?

Commencez par 'Sécurité Stricte' pour une protection maximale, 'Sécurité Modérée' pour la plupart des sites avec des ressources externes, ou 'Permissif' pour les sites de développement ou hérités. Vous pouvez toujours personnaliser les directives après avoir sélectionné un préréglage.

Puis-je utiliser CSP avec des meta tags plutôt que des en-têtes HTTP ?

Oui, mais les en-têtes HTTP sont recommandés car ils offrent plus de fonctionnalités et de sécurité. Notez que le mode rapport uniquement ne peut être implémenté qu'avec des en-têtes HTTP, pas des meta tags.

Que signifie 'unsafe-inline' et faut-il l'éviter ?

'unsafe-inline' autorise l'exécution de scripts et styles inline, ce qui peut représenter un risque de sécurité. Il vaut mieux utiliser des fichiers externes ou implémenter des nonces/hashes pour le contenu inline.

Comment gérer des services tiers comme Google Analytics ou des CDNs ?

Ajoutez les domaines spécifiques aux directives appropriées (ex. : script-src pour l'analytics, font-src pour les polices web). Pour Google Analytics, ajoutez 'https://www.google-analytics.com' à script-src. Soyez précis plutôt que d'utiliser des wildcards.

Que faire si mon CSP casse mon site ?

Utilisez d'abord le mode rapport uniquement pour identifier les violations sans casser la fonctionnalité. Vérifiez la console de votre navigateur pour les erreurs de violation CSP, puis mettez à jour votre politique. Renforcez la sécurité progressivement.

Comment mettre en place les rapports de violation CSP ?

Configurez une directive report-uri pointant vers un endpoint pouvant recevoir des requêtes POST avec des données de violation CSP. De nombreux services proposent la surveillance des violations CSP, ou vous pouvez créer votre propre endpoint.

Puis-je utiliser plusieurs politiques CSP sur la même page ?

Si plusieurs politiques CSP sont définies (via en-têtes et meta tags), la plus restrictive s'applique. Il est recommandé d'utiliser une seule politique bien configurée plutôt que plusieurs politiques conflictuelles.

Quelle est la différence entre frame-src et frame-ancestors ?

frame-src contrôle quelles URLs votre page peut intégrer dans des iframes, tandis que frame-ancestors contrôle quelles URLs peuvent intégrer votre page. Utilisez frame-ancestors: 'none' pour empêcher votre page d'être intégrée n'importe où.

À quelle fréquence dois-je mettre à jour ma politique CSP ?

Révisez votre politique CSP chaque fois que vous ajoutez de nouveaux services tiers, modifiez l'architecture de votre site ou recevez des rapports de violation. Les audits de sécurité réguliers doivent inclure des révisions de politique CSP.

CSP fonctionne-t-il sur tous les navigateurs ?

CSP est pris en charge par tous les navigateurs modernes, mais certaines versions plus anciennes peuvent avoir un support limité pour les nouvelles fonctionnalités. CSP dégrade gracieusement — les directives non prises en charge sont ignorées.

Share ToolsZone

Help others discover these free tools!

Partager cette page

Générateur CSP | En-têtes Content Security Policy