Cette configuration CORS vous expose à tous les dangers du web
Combien de développeurs ont déjà écrit .allowedOrigins("*") pour faire disparaître cette fichue erreur CORS ? Probablement la majorité d'entre nous.
Le problème ? Votre API devient accessible depuis n'importe quel site web. Un attaquant peut facilement exploiter cette faille pour récupérer des données sensibles ou effectuer des actions malveillantes au nom de vos utilisateurs.
Comment bien configurer CORS sans compromettre la sécurité ?
Définissez précisément vos origines autorisées Au lieu du joker "*", listez explicitement vos domaines de confiance. Pour gérer plusieurs environnements, utilisez des variables d'environnement qui s'adaptent automatiquement selon le contexte de déploiement.
Restreignez les méthodes HTTP Votre API de lecture n'a pas besoin d'autoriser PUT ou DELETE. Chaque méthode exposée représente une surface d'attaque potentielle.
Maîtrisez les credentials L'option allowCredentials(true) permet l'envoi de cookies et tokens d'authentification. Elle ne doit jamais être combinée avec des origines génériques et uniquement activée quand c'est indispensable.
Centralisez votre configuration Plutôt que de disperser des annotations @CrossOrigin dans vos contrôleurs, créez une configuration globale. Votre équipe aura une vision claire des règles appliquées et pourra les maintenir facilement.
Après je pense qu'aucun dev avec un peu d'xp ne fait ça sauf en mode dev peut être, après je peux juste faire passer ma requête par un petit proxy pour effacer ça😏