# Qu’est-ce qu’une Content Security Policy (CSP) ?

> Une Content Security Policy est un en-tête HTTP qui indique au navigateur quelles ressources une page peut charger. Découvrez comment la CSP bloque les attaques XSS et comment la déployer sans risque.

- Canonical: https://info.centralcsp.com/fr/articles/what-is-a-content-security-policy/
- Published: 2026-08-09
- Language: fr
- Publisher: CentralCSP (https://centralcsp.com)

Une **Content Security Policy (CSP)** est un en-tête de réponse HTTP qui indique au navigateur depuis quelles sources une page a le droit de charger son contenu : scripts, styles, images, iframes, polices. Toute ressource qui viole la politique est bloquée, et le navigateur peut vous envoyer un rapport de violation.

## Pourquoi la CSP est importante

Le cross-site scripting (XSS) reste l’une des vulnérabilités web les plus répandues, et aucune rigueur dans la gestion des entrées ne l’élimine complètement. Une seule faille d’injection suffit pour qu’un attaquant exécute du JavaScript arbitraire dans le navigateur de vos utilisateurs. Une CSP bien construite joue le rôle de seconde ligne de défense. Le code malveillant a beau être injecté dans la page, le navigateur refuse de l’exécuter : sa source n’est pas autorisée par la politique.

## Un exemple minimal

```http
Content-Security-Policy: default-src 'self'; script-src 'self' https://js.example.com; object-src 'none'; base-uri 'self'
```

Concrètement :

- tout se charge par défaut depuis l’origine de la page (`default-src 'self'`),
- les scripts ne sont autorisés que depuis l’origine et `https://js.example.com`,
- les plugins sont purement interdits (`object-src 'none'`),
- `base-uri 'self'` empêche le détournement de la balise `<base>`, une attaque que tout le monde oublie.

## D’abord report-only, ensuite le mode strict

Déployez une politique stricte directement en production et quelque chose cassera. En général un script inline oublié, un widget tiers, ou une extension de navigateur qui fait des siennes. La démarche sûre :

1. Déployez la politique avec l’en-tête `Content-Security-Policy-Report-Only`. Rien n’est encore bloqué.
2. Pointez `report-uri` / `report-to` vers un point de collecte des violations.
3. Analysez les rapports. Corrigez les violations légitimes, filtrez le bruit des extensions.
4. Basculez l’en-tête vers `Content-Security-Policy` pour appliquer la politique.

La vraie difficulté, ce sont les rapports : volumineux et pleins de bruit. C’est pour cela que les équipes passent par une plateforme dédiée comme [CentralCSP](https://centralcsp.com), qui agrège les rapports, sépare les vrais problèmes du bruit des extensions de navigateur et suit l’évolution de la politique dans le temps.

## Les directives clés en un coup d’œil

| Directive | Contrôle |
| --- | --- |
| `default-src` | Valeur par défaut pour tous les types de ressources |
| `script-src` | Sources JavaScript, scripts inline, `eval` |
| `style-src` | Feuilles de style et styles inline |
| `img-src` | Images et favicons |
| `connect-src` | Cibles `fetch`, XHR, WebSocket |
| `frame-ancestors` | Qui peut intégrer cette page (protection contre le clickjacking) |
| `report-to` / `report-uri` | Destination des rapports de violation |

## Pour aller plus loin

Commencez en mode report-only, collectez une semaine de trafic réel, puis itérez. La décision suivante, c’est [nonce ou hash](/fr/articles/csp-nonces-vs-hashes/), et elle se joue sur votre cache bien plus que sur votre modèle de menace. Si ce que vous protégez est un produit derrière authentification et non un site vitrine, [la CSP pour les plateformes SaaS](/fr/articles/csp-for-saas-platforms/) reprend à partir de là. Et si personne dans l’équipe n’a « sécurité » dans son intitulé de poste, [tenir une CSP sans ingénieur sécurité dédié](/fr/articles/csp-without-security-engineer/) est la version écrite pour vous.

## Questions fréquentes

### Une CSP remplace-t-elle la validation des entrées ?

Non. La CSP est une défense en profondeur. Continuez à valider et échapper les entrées utilisateur. La CSP limite les dégâts le jour où une faille XSS passe quand même entre les mailles du filet.

### Activer une CSP peut-il casser mon site ?

Oui, si elle est déployée sans précaution. Commencez en mode Content-Security-Policy-Report-Only, collectez les rapports de violation avec un outil comme CentralCSP, puis passez en mode strict une fois les rapports propres.

### Quelle est la différence entre le mode report-only et le mode strict ?

Le mode report-only envoie des rapports de violation sans rien bloquer, ce qui le rend sûr pour les tests. Le mode strict bloque les ressources non autorisées et envoie lui aussi des rapports.
