Obtenir des jetons d’accès à la Management API pour les applications monopage
Découvrez les scopes et les points de terminaison disponibles pour les jetons de la Management API destinés aux applications monopage (SPA).
Dans certains cas, il se peut que vous souhaitiez utiliser la Management API d’Auth0 pour gérer vos applications et vos API plutôt que le tableau de bord Auth0.Pour appeler des points de terminaison de la , vous devez vous authentifier à l’aide d’un Jeton d’accès spécialisé appelé jeton de la Management API. Les jetons de la Management API sont des JSON Web Tokens (JWT) qui contiennent des autorisations précises accordées (aussi appelées scopes) pour les points de terminaison de la Management API que vous souhaitez appeler.
Étant donné que les applications monopages (SPA) sont des et ne peuvent pas stocker de façon sécurisée des renseignements sensibles (comme un ), elles doivent récupérer les jetons de la Management API à partir du frontend, contrairement aux autres types d’application. Cela signifie que les jetons de la Management API pour les SPA comportent certaines limites. Plus précisément, ils sont émis dans le contexte de l’utilisateur actuellement connecté à Auth0, ce qui limite les mises à jour aux seules données de cet utilisateur. Bien que cela restreigne l’utilisation de la Management API, elle peut tout de même servir à effectuer des actions liées à la mise à jour du profil de l’utilisateur connecté.
Auth0 ne recommande pas d’exposer dans le frontend des jetons de la Management API qui permettent aux utilisateurs de modifier les métadonnées utilisateur. Les utilisateurs pourraient ainsi manipuler leurs propres métadonnées d’une manière susceptible de nuire au bon fonctionnement des applications. Cela permet aussi à un client de mener une attaque par déni de service contre l’accès à la Management API d’une autre personne simplement en l’inondant de requêtes jusqu’à atteindre les limites de débit.
Avec un jeton de la Management API émis pour une SPA, vous pouvez accéder aux scopes suivants (et donc aux points de terminaison ci-dessous).
Il est impossible de modifier le mot de passe au moyen du point de terminaison PATCH /api/v2/users/ avec un jeton de la Management API émis pour une SPA.
Utiliser un jeton de la Management API pour appeler la Management API à partir d’une SPA
Vous pouvez récupérer un jeton de la Management API à partir d’une SPA (en utilisant l’ de la Management API pour le générer) et utiliser ce jeton pour appeler la Management API afin de récupérer le profil complet de l’utilisateur actuellement connecté.
Authentifiez l’utilisateur en le redirigeant vers le point de terminaison d’autorisation, où les utilisateurs sont dirigés lors de la connexion ou de l’inscription.
Lorsque vous recevez le jeton de la Management API, il est au format JSON Web Token.
Décodez-le et examinez son contenu.
Appelez la Management API pour récupérer le profil de l’utilisateur connecté à partir du point de terminaison Get User by ID.
Pour appeler le point de terminaison, incluez le jeton de la Management API encodé que vous avez récupéré dans l’en-tête Authorization de la requête.
Assurez-vous de remplacer les valeurs d’espace réservé USER_ID et MGMT_API_ACCESS_TOKEN par l’ID de l’utilisateur connecté (valeur sub du jeton de la Management API décodé) et le jeton d’accès de la Management API, respectivement.