JWT SPA symfony exercice pratique

De Marmits Wiki
Version datée du 24 mai 2024 à 12:14 par Geo (discussion | contributions) (Page créée avec « Category:Symfony Chanter JWT pour l'authentification dans un SPA avec Symfony est très facile grâce à des bundles comme FOSUserBundle, LexikJWTAuthenticationBundle… »)
(diff) ← Version précédente | Voir la version actuelle (diff) | Version suivante → (diff)

Chanter JWT pour l'authentification dans un SPA avec Symfony est très facile grâce à des bundles comme FOSUserBundle, LexikJWTAuthenticationBundle et JWTRefreshTokenBundle. Malheureusement, ils ne fournissent pas de sécurité contre les attaques XSS (ce qui, selon vous, n'est pas vraiment là). Dans cet article, je veux montrer comment nous pouvons améliorer une application Symfony en utilisant ces bundles pour empêcher les attaques XSS. Comme il est assez long, je vais le diviser en parties suivantes:

Pourquoi les applications avec JWT sont vulnérables contre XSS

Les problèmes séparés que nous devons résoudre

La solution à ces problèmes

Adaptations nécessaires pour les tests du contrôleur

Adaptations pour le frontend et outils comme Postman

Pourquoi la combinaison de JWT et XSS est-elle si pertinente?

Bases de JWT

La promesse de JWT est simple: dans le frontend, vous effectuez une action de connexion qui retourne un JWT (JSON Web Token). Avec ce JWT, vous pouvez ensuite effectuer d'autres actions sur le serveur qui nécessitent une authentification en fournissant uniquement le JWT. Le délai d'authentification et d'expiration fait partie du JWT.