Content Security Policy (CSP)
Advanced Ecosystem 🟡 MidDéfinition
En-tête HTTP qui restreint les sources autorisées pour scripts, styles, images et connexions : première défense contre les XSS. La spécification CSP Level 3 reste un Working Draft du W3C (dernière version du 13 août 2026) mais ses apports clés, 'strict-dynamic' et les nonces, sont largement implémentés. Elle s'accompagne des Trusted Types (require-trusted-types-for), disponibles dans tous les navigateurs majeurs depuis février 2026.
Analogie
Une liste blanche à l'entrée d'un club VIP : seules les sources approuvées peuvent entrer et s'exécuter.
Exemple de code
// CSP « stricte » niveau 3 : nonce + strict-dynamic
Content-Security-Policy:
default-src 'self';
script-src 'nonce-r4nd0m' 'strict-dynamic';
object-src 'none';
base-uri 'none';
require-trusted-types-for 'script'; // Trusted Types
trusted-types app-policy;
// Le nonce change à chaque réponse ; les scripts qu'il charge
// dynamiquement héritent de la confiance (strict-dynamic).
Cas d'usage
Empêcher l'exécution de scripts malicieux injectés dans la page (XSS, injection de publicités).
Anti-pattern
'unsafe-inline' et 'unsafe-eval' dans script-src, ou une liste blanche de domaines CDN contournable : préférer nonce + 'strict-dynamic'.
Termes liés
Fiche mise à jour le 2026-09-27