Retour au blog
Sécurité·9 min

Sécuriser une API Express avec Helmet, CSP et rate limiting

Recettes prêtes à copier pour durcir vos endpoints Express en 30 minutes : headers, CSP, rate-limit, CORS.

AG
Arno Gilardin
Fondateur, TranscribeFlow

Une API Express "vanilla" n'est pas sécurisée par défaut. Voici la baseline minimale qu'on déploie sur tous nos services.

Helmet

npm i helmet puis app.use(helmet()). Ajoute 11 headers de sécurité d'un coup. Override CSP si vous servez du HTML.

CSP strict

Default-src 'self', script-src 'self' 'sha256-XXX' (hashes spécifiques), connect-src 'self' https://api.mistral.ai. Bloque 99% des XSS.

Rate limiting

express-rate-limit avec store Redis. 100 req/min général, 5/15min sur /login, 20/min sur /webhook.

CORS

Whitelist explicite des origins. Pas de origin: '*' en prod. Credentials true uniquement si vraiment nécessaire.

Body parser limits

express.json({ limit: '1mb' }). Sans ça, un attaquant peut envoyer 1 Go et OOM votre process.

Cookies

HttpOnly + Secure + SameSite=Lax. Session ID rotation à chaque login pour éviter session fixation.

Mots-clés
ExpressHelmetCSPrate limitNode.js

Prêt à essayer TranscribeFlow ?

14 jours gratuits, sans carte bancaire. Souverain, RGPD, hébergé en Allemagne.

Créer un compte gratuit