← Retour au blog

Une CSP stricte limite les sources de code et de contenu et bloque les injections.

Principes

  • Privilégier les nonces/hachages plutôt que 'unsafe-inline'.
  • Éviter les jokers, cadrer précisément les sources (schémas, hôtes, chemins).
  • Isoler les contenus tiers (sous-domaines/sandbox) et interdire eval.
  • Utiliser frame-ancestors au lieu de X-Frame-Options.
  • Journaliser les violations (report-to / report-uri) et itérer.

Déploiement sans casse

  • D’abord en Report-Only, corriger les violations, puis faire appliquer.
  • Inventorier les ressources tierces et les autoriser via nonces/hachages.
  • Épingler les connexions attendues avec connect-src.

En bref

Commencez par une CSP stricte, déployez en Report-Only, puis appliquez. Préférez les nonces/hachages à 'unsafe-inline'. Autorisez seulement le nécessaire.

Checklist 5 minutes

  • Base: default-src 'self' (ou 'none'), puis ajouter les sources explicitement.
  • Utiliser des nonces pour les scripts/styles inline éviter les jokers.
  • Épingler les domaines tiers retirer les autorisations inutiles.
  • Activer upgrade-insecure-requests et bloquer le contenu mixte.
  • Déployer via Content-Security-Policy-Report-Only et surveiller les violations.

Ressources