Analyseur CSP
Collez la valeur d'un en-tête Content-Security-Policy pour voir chaque directive expliquée en langage clair et chaque risque signalé par gravité — le tout dans votre navigateur.
L'analyseur CSP analyse et note votre Content-Security-Policy entièrement dans votre navigateur. La valeur d'en-tête que vous collez ne quitte jamais votre appareil et rien n'est téléversé vers ArrayKit.
Ouvrir le générateur d'en-tête CSP
À propos de Analyseur CSP
L'analyseur CSP prend la valeur d'un en-tête Content-Security-Policy et la décompose en un tableau directive par directive, expliquant en langage clair ce que chaque directive contrôle. Il audite ensuite la politique pour les faiblesses qui neutralisent discrètement une CSP : 'unsafe-inline' et 'unsafe-eval' dans les sources de scripts, les caractères génériques '*' nus, les origines http: non sécurisées, un schéma data: trop large, et le durcissement manquant tel que default-src, object-src 'none', frame-ancestors et base-uri. Chaque constat porte une gravité pour que vous voyiez d'un coup d'œil si une politique est stricte ou perméable. Il est utile quand vous durcissez un site, examinez une politique qu'un framework a générée pour vous, ou déboguez pourquoi une CSP en report-only autorise encore des scripts en ligne. Tout est analysé et noté sur votre appareil — l'en-tête que vous collez n'est jamais téléversé.
Fonctionnalités
- Analyse toute valeur Content-Security-Policy en un tableau propre directive par directive
- Explique chaque directive (script-src, frame-ancestors, base-uri…) en langage clair
- Signale 'unsafe-inline' et 'unsafe-eval' dans les sources de scripts comme risque élevé
- Détecte les caractères génériques '*' nus et les sources http: non sécurisées
- Avertit sur l'absence de default-src, object-src 'none', frame-ancestors et base-uri
- Attribue une gravité (élevée / moyenne / faible / OK) à chaque constat
- Accepte l'entrée avec ou sans le nom d'en-tête 'Content-Security-Policy:'
- S'exécute entièrement dans votre navigateur — la politique que vous collez ne quitte jamais votre appareil
Comment utiliser Analyseur CSP
- Copiez la valeur de l'en-tête Content-Security-Policy depuis votre configuration serveur ou les en-têtes de réponse
- Collez-la dans l'analyseur (le nom d'en-tête en tête est optionnel)
- Lisez le tableau directive par directive pour confirmer ce que chaque directive autorise
- Parcourez les constats, du plus grave au moins grave, et durcissez les directives signalées
Exemple
Entrée
default-src 'self'; script-src 'self' 'unsafe-inline'; object-src 'none'
Sortie
HIGH script-src 'unsafe-inline' permits inline scripts
MED frame-ancestors missing — page can be framed (clickjacking)
OK object-src 'none' blocks plugins (recommended)
L'analyseur signale unsafe-inline comme élevé, note l'absence de frame-ancestors et confirme object-src 'none'.
Erreurs courantes et dépannage
- La politique a script-src 'self' mais les scripts en ligne s'exécutent quand même. — Cherchez 'unsafe-inline' dans script-src (ou default-src en repli). Retirez-le et passez à des nonces ou des hachages pour que seuls vos blocs en ligne s'exécutent.
- L'analyseur avertit que default-src est manquant. — default-src est le repli pour la plupart des directives fetch. Sans lui, toute directive que vous n'avez pas explicitement listée n'est pas restreinte — ajoutez default-src 'self' ou 'none'.
- Frame-ancestors est signalé même si X-Frame-Options est défini. — Les navigateurs modernes préfèrent frame-ancestors à X-Frame-Options. Ajoutez frame-ancestors 'self' ou 'none' à la CSP pour que l'affichage en cadre soit contrôlé par la politique.
- Un caractère générique '*' dans une source est signalé comme un risque. — '*' autorise du contenu de n'importe quelle origine, ce qui annule l'intérêt de cette directive. Remplacez-le par les hôtes https:// spécifiques depuis lesquels vous chargez réellement.
Foire aux questions
- Que vérifie l'analyseur CSP ?
- Il analyse chaque directive, explique ce qu'elle contrôle et signale les faiblesses courantes : 'unsafe-inline' et 'unsafe-eval' dans les sources de scripts, les caractères génériques '*' nus, les origines http: non sécurisées, un schéma data: trop large, et l'absence de default-src, object-src 'none', frame-ancestors et base-uri.
- Pourquoi 'unsafe-inline' est-il signalé comme risque élevé ?
- 'unsafe-inline' laisse s'exécuter les blocs <script> en ligne et les attributs gestionnaires d'événements, ce qui est précisément le vecteur d'injection que la CSP est censée bloquer. Il neutralise de fait script-src, donc l'analyseur le traite comme un constat de gravité élevée et suggère des nonces ou des hachages à la place.
- Dois-je inclure le nom d'en-tête 'Content-Security-Policy:' ?
- Non. Vous pouvez coller soit la ligne d'en-tête complète, soit uniquement la valeur de la politique. L'analyseur retire automatiquement un préfixe 'Content-Security-Policy:' ou 'Content-Security-Policy-Report-Only:' en tête avant l'analyse.
- Pourquoi l'analyseur avertit-il de l'absence de frame-ancestors ?
- Sans frame-ancestors, n'importe quel site peut intégrer votre page dans une iframe, permettant le détournement de clic. frame-ancestors est le remplaçant moderne de X-Frame-Options, donc l'analyseur recommande d'ajouter frame-ancestors 'self' ou 'none'.
- Cela valide-t-il que ma politique est syntaxiquement parfaite ?
- Il se concentre sur la posture de sécurité plutôt que sur la grammaire stricte. Il gère les formes courantes que les navigateurs acceptent — des directives séparées par des points-virgules avec des sources séparées par des espaces — et pointe les sources risquées et le durcissement manquant plutôt que de chipoter sur les espaces.
- L'en-tête CSP que je colle est-il envoyé quelque part ?
- Non. L'analyseur CSP analyse et note la politique entièrement dans votre navigateur. La valeur d'en-tête que vous collez reste sur votre appareil et n'est jamais téléversée vers ArrayKit.
Outils associés
Tous les outils ArrayKit