Codelab_ Authentification et autorisation basées sur des jetons.pdf
Dans ce Codelab, nous allons créer un exemple d'API Node.js Express REST qui prend en charge l'authentification basée sur des jetons avec JWT (JSONWebToken).
Par rapport à l'authentification basée sur la session qui doit stocker la session sur le cookie, le grand avantage de l'authentification basée sur le jeton est que nous stockons le JSON WEB TOKEN (JWT) côté client : stockage local pour le navigateur, et préférences partagées pour Android…
Il y a trois parties importantes d'un JWT : Header, Payload, Signature. Ensemble, ils sont combinés en une structure standard : header.payload.signature
.
Le client attache généralement JWT dans l'en-tête d'autorisation (authorization) avec le préfixe (Bearer) :
Ou uniquement dans l'en-tête x-access-token :
Méthodes | URLs | Actions |
---|---|---|
POST | /auth/signup | créer un nouveau compte utilisateur |
POST | /auth/signin | connecter un compte utilisateur |
GET | /test/all | récupérer du contenu public |
GET | /test/user | accéder au contenu de l'utilisateur enregistré |
Vous pouvez avoir un aperçu de notre application Node.js Express JWT avec le schéma ci-dessous :
Via les routes express, la requête HTTP qui correspond à une route sera vérifiée par le middleware CORS avant d'arriver à la couche de sécurité.