- Deux API Node.js :
contactsetcalendar(à considérer comme microservices). - Un serveur de ressources représentant les deux API.
- Deux permissions à espace de noms :
read:contactsetread:calendar - Le flux d’autorisation implicite pour obtenir un
access_tokenqui fonctionne avec les deux API.
Organizer Service. Nous allons ensuite créer deux permissions pour démontrer comment vous pouvez utiliser le flux implicite pour accéder aux API calendar et contacts à partir de l’application Web monopage.
Vous devez effectuer ce qui suit :
- Activer une connexion pour votre application.
- Créer un utilisateur de test.
- Enregistrer une API logique dans Auth0.
- Configurer des permissions pour l’API logique.
- Accorder l’accès à l’API logique.
- (Facultatif) Mettre en œuvre la déconnexion unique (SLO) ou l’authentification unique (SSO).
Prérequis
-
Enregistrer votre application.
- Sélectionnez un type d ’application d’application à page unique.
- Ajoutez les Callback URL autorisées de
http://localhost:3000ethttp://localhost:3000/callback.html.
- Téléchargez l’ exemple d’application. Pour savoir comment configurer l’application d’exemple, consultez le fichier README.
Activer une connexion pour votre application.
Créer un utilisateur de test.
Enregistrer une API logique dans Auth0.
Organizer Service et définissez son identifiant unique sur organize. Par défaut, l’algorithme de signature des jetons obtenus pour cette API est RS256, que vous devez laisser tel quel. Pour en savoir plus, lisez Enregistrer les API.
Configurer des autorisations pour l’API logique
read les données d’une API appelée calendar et une autre appelée contacts, vous devez donc créer les autorisations suivantes :
read:calendarread:contacts
Accorder l’accès à l’API logique.
- Si vous avez une Application de communication entre machines , vous pouvez l’autoriser à demander des jetons d’accès à votre API en exécutant un flux des identifiants client.
- Si vous créez une application native, utilisez le Flux de code d’autorisation avec Proof Key for Code Exchange (PKCE).
-
L’utilisateur clique sur Connexion dans l’application Web monopage, et l’application le redirige vers le serveur d’autorisation Auth0 (point de terminaison
/authorize). Pour en savoir plus sur les paramètres de l’appel, consultez notre tutoriel : Appeler votre API avec le flux de code d’autorisation avec PKCE.
-
Votre serveur d’autorisation Auth0 redirige l’utilisateur vers la page de connexion, où l’utilisateur s’authentifie en utilisant l’une des options de connexion configurées.

-
Si c’est la première fois que l’utilisateur passe par ce flux, il voit une invite de consentement listant les autorisatoins qu’Auth0 donnera à l’application Web monopage. Dans ce cas, on demande à l’utilisateur de donner son consentement pour que l’application puisse accéder à ses contacts et à son calendrier.

-
Si l’utilisateur donne son accord, Auth0 le redirige vers l’application Web monopage avec des jetons dans le fragment de hachage de l’URI. L’application monopage peut alors extraire les jetons du fragment de hachage à l’aide de JavaScript et utiliser le jeton d’accès pour appeler vos API au nom de l’utilisateur.

Mettre en œuvre la déconnexion unique (SLO) ou l’authentification unique (SSO).
checkSession() pour voir si une session existe. Si la session n’existe pas, vous pouvez alors déconnecter l’utilisateur de l’application. La même méthode d’interrogation peut être mise en place pour une authentification silencieuse dans un scénario d’authentification unique ().
L’intervalle d’interrogation entre les vérifications de checkSession() devrait être d’au moins 15 minutes entre chaque appel pour éviter tout problème ultérieur lié à la limite anti-attaques de cet appel.