Aller au contenu

Sécurité de l'API

Workflow d'authentification

Séquence :

  • le front appelle l'endpoint /api/login en envoyant le payload {"login": "string", "password": "string"}
    • le back essaie de trouver un utilisateur matchant ces données
      • en cas d'erreur une erreur 401 est renvoyée au front
    • le back crée un jwt signé contenant les informations de base de l'utilisateur
    • le back renvoie ce jwt dans le corps de la réponse (code http 200)
  • le front stock en session locale ce jwt
  • le front ajoute le header Authorization: Bearer $jwt dans tous les appels APIs
    • le back vérifie la véracité du jwt en comparant sa signature
      • en cas d'erreur on retourne une 401
    • le back vérifie que le token n'est pas expiré
      • si le token a expiré on retourne une 401
  • le front doit vérifier que le token n'est pas expiré avant de l'utiliser
  • le front doit gérer le cas où le token expire au moment de l'utilisation (interception des 401)