Outil gratuit
Vérificateur gratuit d'en-têtes de sécurité
Entrez votre URL pour vérifier quels en-têtes de sécurité sont présents et obtenir une note avec des recommandations spécifiques pour améliorer votre posture de sécurité.
Comment ça fonctionne
Entrez votre URL
Collez l'adresse de votre site web dans le vérificateur ci-dessus.
Nous vérifions les en-têtes
L'outil récupère votre page et inspecte tous les en-têtes de sécurité HTTP par rapport aux bonnes pratiques.
Consultez votre note
Voyez quels en-têtes sont présents, manquants ou mal configurés avec des explications en langage clair.
Ce que cet outil vérifie
Strict-Transport-Security (HSTS)
Force les connexions HTTPS et empêche les attaques par rétrogradation.
Content-Security-Policy (CSP)
Contrôle quelles ressources le navigateur peut charger pour bloquer les attaques XSS.
X-Frame-Options
Empêche le détournement de clic en bloquant l'intégration de votre site dans des iframes.
X-Content-Type-Options
Empêche les navigateurs de deviner les types de contenu, bloquant les attaques par détournement MIME.
Referrer-Policy et Permissions-Policy
Contrôle le partage d'informations de référent et l'accès aux fonctionnalités du navigateur.
Pourquoi les en-têtes de sécurité sont importants
Les en-têtes de sécurité sont des instructions que votre serveur web envoie aux navigateurs avec chaque page. Ils indiquent au navigateur ce qu'il est autorisé à faire et ce qu'il doit bloquer. Sans eux, votre site est plus vulnérable aux attaques par scripts intersites (XSS), au détournement de clic, à l'injection de données et aux attaques de l'homme du milieu.
La plupart des frameworks web modernes permettent d'ajouter facilement des en-têtes de sécurité. Quelques lignes de configuration peuvent bloquer des catégories entières d'attaques. Pourtant, de nombreux sites web sont encore livrés sans en-têtes basiques car ils sont invisibles à l'oeil nu.
Google considère également le HTTPS et les signaux de sécurité comme des facteurs de classement. Un site correctement sécurisé protège non seulement vos visiteurs mais peut aussi mieux performer dans les résultats de recherche.
Article 32 du RGPD et en-têtes de sécurité
L'article 32 du RGPD demande des mesures techniques et organisationnelles appropriées pour sécuriser les données. Le texte ne liste pas les en-têtes HTTP. Il laisse au responsable de traitement le soin de déterminer ce qui est approprié au vu des risques.
En pratique, le CCB (Centre for Cybersecurity Belgium), l'ENISA, l'OWASP et l'APD elle-même citent les en-têtes de sécurité comme base minimale pour un site web. Les recommandations publiées par le CCB et les avis de l'APD soulignent l'importance des configurations TLS et des en-têtes HTTP.
En cas de fuite de données, l'absence d'en-têtes de sécurité est un facteur aggravant dans l'analyse de l'autorité de contrôle. C'est arrivé dans plusieurs dossiers où la vulnérabilité exploitée aurait été bloquée par une politique CSP correcte ou par HSTS.
Ce n'est pas une protection absolue. C'est une mesure de base que toute autorité de protection des données, APD, CNIL ou ICO, considère comme acquise pour un site qui traite des données personnelles.
Les six en-têtes qui comptent vraiment
Il existe une quinzaine d'en-têtes HTTP liés à la sécurité. Six d'entre eux font l'essentiel du travail.
Strict-Transport-Security (HSTS). Oblige le navigateur à utiliser HTTPS pour toutes les requêtes suivantes vers votre domaine. Configuration type : Strict-Transport-Security: max-age=31536000; includeSubDomains. Erreur fréquente : activer HSTS avec un max-age trop court ou sans includeSubDomains.
Content-Security-Policy (CSP). Contrôle quelles sources peuvent charger du code sur votre page. C'est la défense la plus forte contre le cross-site scripting. Configuration difficile à mettre en place sans casser le site. Commencez en mode report-only pendant deux semaines avant de passer en mode enforce.
X-Frame-Options. Empêche votre site d'être affiché dans une iframe sur un domaine tiers. Bloque le clickjacking. Valeur recommandée : SAMEORIGIN. Largement remplacé par la directive frame-ancestors de CSP, mais conservez-le pour les navigateurs anciens.
X-Content-Type-Options. Une seule valeur utile : nosniff. Empêche le navigateur de deviner le type MIME d'une ressource. Bloque une classe d'attaques par upload.
Referrer-Policy. Contrôle l'information envoyée dans l'en-tête Referer lors de la navigation sortante. Valeur recommandée : strict-origin-when-cross-origin. Protège la vie privée des utilisateurs en limitant les fuites d'URL vers les sites tiers.
Permissions-Policy. Désactive les APIs navigateur que votre site n'utilise pas. Caméra, microphone, géolocalisation, capteurs. Configuration type minimale : Permissions-Policy: camera=(), microphone=(), geolocation=().
- Strict-Transport-Security
- Content-Security-Policy
- X-Frame-Options
- X-Content-Type-Options
- Referrer-Policy
- Permissions-Policy
Configuration par type de serveur
Les trois environnements les plus courants pour un site de PME belge : Apache, Nginx et Cloudflare en couche devant l'origine.
Apache (.htaccess ou httpd.conf) :
<IfModule mod_headers.c>
Header always set Strict-Transport-Security "max-age=31536000; includeSubDomains"
Header always set Content-Security-Policy "default-src 'self'; script-src 'self'; style-src 'self' 'unsafe-inline'"
Header always set X-Frame-Options "SAMEORIGIN"
Header always set X-Content-Type-Options "nosniff"
Header always set Referrer-Policy "strict-origin-when-cross-origin"
Header always set Permissions-Policy "camera=(), microphone=(), geolocation=()"
</IfModule>
Nginx (dans le bloc server) :
add_header Strict-Transport-Security "max-age=31536000; includeSubDomains" always;
add_header Content-Security-Policy "default-src 'self'; script-src 'self'; style-src 'self' 'unsafe-inline'" always;
add_header X-Frame-Options "SAMEORIGIN" always;
add_header X-Content-Type-Options "nosniff" always;
add_header Referrer-Policy "strict-origin-when-cross-origin" always;
add_header Permissions-Policy "camera=(), microphone=(), geolocation=()" always;
Cloudflare Transform Rules. Depuis l'onglet Rules > Transform Rules > Modify Response Header, ajoutez chaque en-tête comme règle séparée. Avantage : pas besoin d'accès au serveur d'origine. Limite : attention à ne pas définir deux fois le même en-tête, une fois côté origine et une fois côté Cloudflare, ce qui crée des valeurs dupliquées que certains navigateurs ignorent.
Pièges classiques et comment les éviter
Cinq erreurs reviennent dans 90 % des audits.
Le CSP trop strict dès le départ. Le site casse, les administrateurs reviennent à default-src * et laissent tomber. Solution : commencer en Content-Security-Policy-Report-Only avec un endpoint de rapport pendant deux semaines, corriger les violations, puis passer en mode actif.
HSTS sur un site qui alterne encore HTTP et HTTPS. Si une partie du site charge en HTTP, le navigateur bloque tout après la première visite HTTPS. Vérifiez que tout le site, y compris les assets, est en HTTPS avant d'activer HSTS.
Le double en-tête. Configuré à la fois dans WordPress via un plugin et dans Apache. Le navigateur reçoit deux valeurs, souvent contradictoires, et applique un comportement imprévisible. Centralisez la configuration à un seul endroit.
X-Frame-Options sans frame-ancestors CSP. Seul X-Frame-Options est déprécié dans les nouveaux navigateurs. Définissez les deux pour couvrir les clients anciens et récents.
Referrer-Policy trop laxiste. La valeur par défaut dans beaucoup de frameworks est no-referrer-when-downgrade, qui laisse fuir les URLs complètes. Passez à strict-origin-when-cross-origin. C'est aussi une mesure de minimisation au sens du RGPD.
Notre scanner gratuit teste ces six en-têtes en même temps que les autres vérifications RGPD. Pour un test ciblé sur les en-têtes uniquement, utilisez l'outil en haut de cette page.
Questions fréquentes
Que sont les en-têtes de sécurité HTTP ?
Les en-têtes de sécurité HTTP sont des en-têtes de réponse que votre serveur web envoie aux navigateurs. Ils indiquent au navigateur comment se comporter lors du traitement du contenu de votre site, bloquant des attaques comme le XSS et le détournement de clic.
Pourquoi mon site obtient-il un F ?
Une note F signifie que la plupart des en-têtes de sécurité recommandés sont manquants. C'est courant pour les sites utilisant des configurations serveur par défaut. Ajouter les en-têtes prend généralement quelques minutes de configuration serveur.
Comment ajouter des en-têtes de sécurité à mon site ?
La méthode dépend de votre hébergement. Pour Apache, utilisez .htaccess, pour Nginx, utilisez la configuration du bloc serveur, pour Vercel ou Netlify, utilisez leur fichier de configuration des en-têtes. La plupart des CDN permettent aussi d'ajouter des en-têtes.
L'ajout d'en-têtes de sécurité ralentit-il mon site web ?
Non. Les en-têtes de sécurité ajoutent une quantité négligeable de données à chaque réponse, généralement moins de 500 octets. Ils n'ont aucun impact mesurable sur la vitesse de chargement des pages.
Content-Security-Policy est-il difficile à configurer ?
CSP peut être complexe pour les sites avec de nombreux scripts tiers. Commencez en mode report-only pour voir ce qui serait bloqué avant d'appliquer. Une politique basique est simple à mettre en place.
Les en-têtes de sécurité affectent-ils le SEO ?
Indirectement oui. Google favorise les sites HTTPS et HSTS garantit que le HTTPS est toujours utilisé. Un site sécurisé renforce aussi la confiance des utilisateurs, réduisant le taux de rebond ce qui peut améliorer le classement.
À quelle fréquence devrais-je vérifier mes en-têtes de sécurité ?
Vérifiez après chaque déploiement ou changement de configuration serveur. Les en-têtes peuvent être accidentellement supprimés lors des mises à jour. Une surveillance régulière détecte les régressions avant les attaquants.
La sécurité n'est qu'une pièce du puzzle
Votre score d'en-têtes de sécurité ne raconte qu'une partie de l'histoire. Nous vérifions aussi le consentement aux cookies, la conformité RGPD, l'accessibilité et plus de 120 autres points.
Lancer un scan gratuit du site web→