Deux fonctionnalités de sécurité dont chaque application web a besoin et que la plupart des développeurs oublient d'ajouter : la limitation de débit pour empêcher l'abus, et les en-têtes de sécurité pour empêcher les attaques côté client. FLIN intègre les deux dans le runtime.
Limitation de débit
flinguard rate_limit(5, 60) // 5 requêtes par 60 secondesL'algorithme de fenêtre glissante est plus précis que les fenêtres fixes. En-têtes de réponse standard (X-RateLimit-Limit, X-RateLimit-Remaining, Retry-After) inclus automatiquement.
En-têtes de sécurité automatiques
Chaque réponse HTTP en mode production inclut :
httpX-Frame-Options: DENY
X-Content-Type-Options: nosniff
X-XSS-Protection: 1; mode=block
Referrer-Policy: strict-origin-when-cross-origin
Strict-Transport-Security: max-age=31536000; includeSubDomains; preload
Content-Security-Policy: default-src 'self'; script-src 'self'; style-src 'self' 'unsafe-inline'
Permissions-Policy: camera=(), microphone=(), geolocation=()Ces en-têtes ne sont pas optionnels. Ils ne sont pas du middleware que vous pourriez oublier d'ajouter. Ils font partie de chaque réponse qui quitte le serveur.
Ceci est la partie 109 de la série "How We Built FLIN".
Navigation de la série : - [108] JWT Authentication in 3 Lines of FLIN - [109] Rate Limiting and Security Headers (vous êtes ici) - [110] Two-Factor Authentication (TOTP) - [111] OAuth2 and Social Authentication