Blog CSP et sécurité navigateur
Des guides pratiques sur la Content Security Policy, la Reporting API du navigateur et les headers de sécurité HTTP qui les entourent : le comportement de chacun, le contenu réel de leurs rapports, et comment les déployer sur un site en production sans rien casser.

X-Frame-Options vs frame-ancestors, quel contrôle anti-clickjacking utiliser
X-Frame-Options et la directive CSP frame-ancestors contrôlent qui peut framer votre page. Ce que fait chacun, lequel gagne, et pourquoi envoyer les deux.
CentralCSP Team ·

Ajouter un nonce CSP frais à un site statique avec nginx
Un site statique ne possède pas de backend pour générer un nonce CSP. Placez un marqueur non devinable dans votre HTML et laissez nginx générer et injecter un nonce frais à chaque requête.
CentralCSP Team ·

script-src-elem contre script-src-attr, quelle directive CSP contrôle quoi
script-src-elem contrôle les éléments script et script-src-attr contrôle les event handlers inline. Comment ils divisent script-src et quand poser chacune.
CentralCSP Team ·

SameSite contre les tokens CSRF, faut-il garder le token
SameSite est une vraie défense en profondeur contre le CSRF mais reste limité au site et dépendant du navigateur. Il ne remplace pas les tokens CSRF.
CentralCSP Team ·

no-cache vs no-store, quelle directive Cache-Control garde les données privées
no-cache laisse une réponse être stockée mais revalidée, no-store interdit tout stockage. Pour les pages sensibles, choisissez no-store.
CentralCSP Team ·

HSTS contre upgrade-insecure-requests, faut-il les deux
HSTS force HTTPS au niveau de la navigation et upgrade-insecure-requests réécrit les sous-ressources en mixed content. Complémentaires, pas des alternatives.
CentralCSP Team ·

Où vont les rapports CSP du navigateur et comment les recevoir
Un endpoint de rapport CSP est une URL vers laquelle le navigateur poste les violations. Content types, volume, et construire ou acheter un collecteur.
CentralCSP Team ·

Ce que fait unsafe-eval en CSP et comment le retirer
unsafe-eval réactive eval, new Function et les timers à chaîne, ce qui affaiblit votre CSP face au XSS. Voici où il se glisse et comment le retirer.
CentralCSP Team ·

Hashes SRI automatiques avec webpack et Vite
Hasher chaque chunk à la main est impraticable. Laissez webpack et Vite générer les attributs integrity SRI au build, et surveillez les scripts CDN non couverts.
CentralCSP Team ·

SRI contre hash CSP, deux hashes aux rôles différents
SRI et les hashes CSP se ressemblent mais vérifient des choses différentes. SRI contrôle les octets du fichier externe, un hash CSP autorise du code inline.
CentralCSP Team ·

ReportingObserver, capter les deprecations et violations CSP en JavaScript
ReportingObserver permet à une page de lire ses propres rapports de deprecation, intervention et CSP en JavaScript, sans header. Comment le brancher dans un pipeline front-end.
CentralCSP Team ·

Verrouiller les fonctionnalités du navigateur avec Permissions-Policy et recevoir des reports
Permissions-Policy contrôle quelles fonctionnalités puissantes du navigateur une page et ses iframes peuvent utiliser. La syntaxe du header, l'attribut allow, et comment recevoir des reports.
CentralCSP Team ·

La sécurité côté client de PCI DSS v4 expliquée aux responsables conformité
Un guide en langage clair des exigences 6.4.3 et 11.6.1 de PCI DSS v4, des preuves attendues par un auditeur, et comment un inventaire de scripts et la détection de changement les fournissent.
CentralCSP Team ·

Magecart et formjacking, comment détecter un skimmer côté client
Ce que sont Magecart et le formjacking, pourquoi un serveur ne voit jamais le skimmer, et comment un inventaire de scripts, des alertes de changement et une CSP stricte le détectent.
CentralCSP Team ·

Imposer SRI sur chaque script avec Integrity-Policy
Le header de réponse Integrity-Policy impose Subresource Integrity sur chaque script avec un seul header et signale les scripts qui en manquent.
CentralCSP Team ·

Comment améliorer votre note de headers de sécurité
Une note de headers de sécurité basse a une liste de correctifs. Réglez CSP, HSTS, X-Content-Type-Options, frame-ancestors, Referrer-Policy et Permissions-Policy correctement.
CentralCSP Team ·

Comment configurer le Reporting API du navigateur
Déclarez un endpoint de reporting, pointez une politique vers lui, et lisez le premier rapport envoyé par le navigateur. Un guide pratique de bout en bout.
CentralCSP Team ·

Google Tag Manager sous une CSP stricte dans Next.js
Faites tourner Google Tag Manager dans une app Next.js App Router sous une CSP stricte à nonce et strict-dynamic. Nonce par requête, amorçage GTM, et où vont les hosts Google.
CentralCSP Team ·

Comment les attaquants détournent Google Tag Manager, et comment une CSP stricte le contient
Google Tag Manager sert à injecter des scripts, donc un conteneur compromis livre du JS partout. Comment une CSP stricte et la surveillance des scripts le contiennent.
CentralCSP Team ·

Comment générer un hash Subresource Integrity (SRI)
Générez un hash Subresource Integrity avec le générateur SRI, ajoutez les attributs integrity et crossorigin, et évitez les pièges qui le cassent.
CentralCSP Team ·

Protection anti-clickjacking quand vous ne pouvez pas poser de header CSP
frame-ancestors ne fonctionne que comme vrai header, pas dans une balise meta. Découvrez le repli X-Frame-Options et quoi faire quand les headers sont limités.
CentralCSP Team ·

Comment corriger un constat Unsafe Implementation of Subresource Integrity
Une note de sécurité a signalé un constat Unsafe Implementation of Subresource Integrity. Le workflow de remédiation, trouver les scripts, les hasher, déployer sans risque.
CentralCSP Team ·

Comment corriger les constats CSP de SecurityScorecard
Reliez chaque constat SecurityScorecard sur la politique de sécurité du contenu à une correction concrète report-only puis application, du header manquant aux directives trop larges.
CentralCSP Team ·

Comment activer Trusted Types avec une CSP pour stopper le XSS DOM
Activez Trusted Types avec require-trusted-types-for script et la directive trusted-types pour verrouiller les sinks XSS DOM, en Report-Only pour commencer.
CentralCSP Team ·

CORP vs COEP, deux faces de la même isolation cross-origin
CORP est posé par la ressource pour dire qui peut la charger, COEP est posé par la page pour exiger un opt-in explicite. Comment les deux headers coopèrent.
CentralCSP Team ·

Configurer les fonctionnalités par document avec Document-Policy
Ce que fait le header Document-Policy, la variante report-only, et comment recevoir les reports document-policy-violation via la Reporting API.
CentralCSP Team ·

Rapports de deprecation et intervention, anticipez les changements de navigateur qui cassent votre site
Les rapports de deprecation annoncent la fin prochaine des API et les rapports intervention signalent une décision du navigateur, tous deux via le Reporting API.
CentralCSP Team ·

Comment déboguer les violations CSP dans Chrome DevTools
Lisez le message console Refused to load, utilisez le panneau Issues et reliez une violation CSP à la directive que vous devez corriger.
CentralCSP Team ·

CSP et PCI DSS v4, répondre à 6.4.3 et 11.6.1 sur les pages de paiement
Ce que les exigences PCI DSS v4 6.4.3 et 11.6.1 demandent sur les pages de paiement, et comment une CSP plus inventaire de scripts et alerte sur changement vous donnent la preuve.
CentralCSP Team ·

Comment mettre en place un nonce CSP, par requete, avec Express, Next.js et nginx
Un nonce CSP autorise des scripts inline precis sans unsafe-inline. Voici comment en generer un par requete et le brancher dans Express, Next.js et nginx.
CentralCSP Team ·

Comment generer un hash CSP (sha256) pour un script inline
Un hash CSP autorise un script inline precis par son contenu. Voici comment calculer un hash sha256, ou il se place, et comment il se compare a un nonce.
CentralCSP Team ·

Connection Allowlists, un bac à sable des sorties réseau dans le navigateur
Connection Allowlists permet à une page de déclarer chaque destination qu elle peut contacter, donc le navigateur bloque l exfiltration de données par tout canal. Comment fonctionne le nouveau header.
CentralCSP Team ·

Rapports de crash et de page bloquée du navigateur, un signal de disponibilité côté client
Un rapport de crash signale que le navigateur a tué ou figé la page, livré à la prochaine visite sur votre origine. Ce que contient un rapport et comment le lire.
CentralCSP Team ·

report-uri vs report-to, et comment migrer
report-uri est la directive de reporting CSP dépréciée et report-to la remplace. Ce qui change, en quoi elles diffèrent et comment envoyer les deux sans risque.
CentralCSP Team ·

Comment lire un rapport de violation CSP
Ce que signifie chaque champ d'un rapport de violation CSP, dans la forme moderne de la Reporting API comme dans la forme historique report-uri, pour lire un rapport réel.
CentralCSP Team ·

Comment définir le header Content-Security-Policy dans chaque framework
Des méthodes à copier-coller pour envoyer le header CSP avec nginx, Apache, Express, Django, Next.js, Nuxt, Laravel et Angular, et comment vérifier son envoi réel.
CentralCSP Team ·

strict-dynamic expliqué, abandonnez les allowlists de hosts pour une CSP stricte
Ce que fait le mot-clé strict-dynamic, comment il fonctionne avec un nonce ou un hash, et pourquoi il vous permet de cesser de maintenir de longues allowlists de hosts dans votre CSP.
CentralCSP Team ·

CSP pour les services Google, la fiche des hosts
Les directives CSP dont chaque service Google a besoin, Maps, Fonts, reCAPTCHA, YouTube et Ads, avec un workflow Report-Only en premier.
CentralCSP Team ·

Report-To vs Reporting-Endpoints, migrer hors du header déprécié
Report-To est le header de reporting v0 déprécié et Reporting-Endpoints son remplaçant v1 moderne. Ce qui change, et le seul cas où Report-To reste nécessaire.
CentralCSP Team ·

Qu'est-ce que NEL, le network error logging du navigateur
Network Error Logging demande au navigateur de vous rapporter les échecs DNS, TLS, de connexion et HTTP, y compris ceux qui n'atteignent jamais votre serveur.
CentralCSP Team ·

COOP et COEP expliqués, isolation cross-origin en pratique
Ce que font Cross-Origin-Opener-Policy et Cross-Origin-Embedder-Policy, pourquoi les deux sont nécessaires pour isoler cross-origin, et comment les déployer en report-only.
CentralCSP Team ·

Headers de sécurité hérités que vous pouvez retirer
X-Frame-Options, X-XSS-Protection, Feature-Policy et report-uri ont des remplaçants modernes. Quels anciens headers abandonner, lesquels garder, et ce qui remplace chacun.
CentralCSP Team ·

Un modèle de CSP de départ à copier puis resserrer
Un modèle de politique de sécurité du contenu stricte à coller, lancer en report-only et resserrer ligne par ligne, avec une fiche par directive.
CentralCSP Team ·

Extension Chrome CentralCSP
Concevez, déboguez et déployez une politique de sécurité du contenu sur de vraies pages de production depuis votre navigateur, sans déploiement. Extension CentralCSP gratuite.
CentralCSP Team ·

trusted-types-eval, autoriser eval plus prudemment dans une CSP
trusted-types-eval autorise eval et Function uniquement quand les Trusted Types sont appliqués, donc il remplace unsafe-eval sans tout laisser ouvert.
CentralCSP Team ·

Comment les mots-clés CSP report-sha révèlent chaque script chargé
Comment les mots-clés CSP report-sha256, report-sha384 et report-sha512 rapportent les hashs de scripts pour inventorier ce qui tourne sur vos pages.
CentralCSP Team ·

Le header Reporting-Endpoints expliqué
Comment le header HTTP Reporting-Endpoints et la directive CSP report-to acheminent les rapports du navigateur, avec syntaxe, endpoint default et motif envoyer-les-deux.
CentralCSP Team ·

Le schéma blob dans la Content Security Policy
Les URL blob exigent une autorisation explicite en CSP. self et le wildcard ne les couvrent pas, et autoriser blob dans script-src revient à unsafe-eval.
CentralCSP Team ·

Le schéma data dans la Content Security Policy
Pourquoi data convient à img-src et font-src mais reste un vrai vecteur XSS dans script-src, et comment le permettre par directive sans affaiblir votre CSP.
CentralCSP Team ·

Construire un inventaire de scripts avec le hash reporting CSP
Utilisez le hash reporting CSP pour inventorier chaque script exécuté par le navigateur et produire des preuves pour PCI DSS v4 6.4.3 et 11.6.1.
CentralCSP Team ·

Comment protéger les scripts CDN avec Subresource Integrity
Subresource Integrity laisse le navigateur vérifier la correspondance entre un script CDN et un hash que vous fournissez, bloquant le code tiers altéré.
CentralCSP Team ·

Construire une CSP solide, étape par étape
Une méthode concrète pour construire une politique de sécurité du contenu, du mode Report-Only strict à la mise en application.
CentralCSP Team ·

Comment utiliser le CSP Builder
Construisez une politique de sécurité du contenu fonctionnelle à partir de vrais reports de violation. Choisissez une politique, une fenêtre, générez, revoyez chaque source, puis déployez.
CentralCSP Team ·

BitSight RAU25 et pourquoi la CSP est désormais notée
BitSight RAU25 a retiré Web Application Headers au profit de Web Application Security le 10 juillet 2025. Voici comment la CSP est notée et comment la corriger.
CentralCSP Team ·

Comment corriger les constats CSP de BitSight
Un workflow report-only puis application pour corriger les constats CSP de BitSight sous la notation Web Application Security de RAU25.
CentralCSP Team ·

Comment les endpoints JSONP contournent votre CSP
Une allowlist de hosts qui fait confiance à un endpoint JSONP offre aux attaquants du script arbitraire. Voici comment le contournement opère et comment le fermer.
CentralCSP Team ·

Pourquoi ne jamais utiliser unsafe-inline dans une CSP
unsafe-inline réactive les scripts inline que la CSP bloque par défaut et annule sa protection XSS. Préférez les nonces, les hash ou des fichiers externes.
CentralCSP Team ·

Débuter avec la Content Security Policy
Un guide CSP pour débutants. Définition, livraison, première politique, premier nonce, et test sans risque avec Report-Only.
CentralCSP Team ·

Mettre en place un nonce CSP dans Next.js
Ajoutez une Content Security Policy stricte basée sur un nonce à une app Next.js App Router. Générez le nonce dans proxy.ts et laissez Next l appliquer.
CentralCSP Team ·

CSP pour Google Analytics et Tag Manager avec un nonce
Faites tourner GA4 et Google Tag Manager sous une CSP stricte avec un nonce et strict-dynamic. Aucun host Google dans script-src, avec un exemple de header complet.
CentralCSP Team ·

Démarrer avec le reporting CSP
Configurez le reporting des violations CSP de façon moderne avec Reporting-Endpoints et report-to, démarrez en report-only, et lisez le contenu du rapport.
CentralCSP Team ·

Mode enforce ou report-only de la CSP
Content-Security-Policy bloque les violations, Report-Only se contente de les observer. Quand utiliser chacun et comment exécuter les deux.
CentralCSP Team ·

Plusieurs politiques CSP sur une même page
Comment un navigateur combine plusieurs politiques CSP, par header, meta et Report-Only, et pourquoi des politiques supplémentaires ne font que restreindre.
CentralCSP Team ·

Balise meta CSP ou header HTTP
Déployez votre politique de sécurité du contenu (CSP) via un header HTTP, pas une balise meta. Le header agit plus tôt et accepte toutes les directives.
CentralCSP Team ·