- 2 API Node.js :
contactsetcalendar(vous pouvez les considérer comme des microservices) - 1 Resource Server représentant les 2 API
- 2 scopes avec espace de noms :
read:contactsetread:calendar - Le flux implicite pour obtenir un
access_tokenqui fonctionne pour les deux API
Organizer Service. Nous créerons ensuite deux scopes pour montrer comment utiliser le flux implicite afin d’accéder aux API calendar et contacts à partir de la SPA.
Vous devez effectuer les étapes suivantes :
- Activer une connexion pour votre application
- Créer un utilisateur de test
- Enregistrer une API logique dans Auth0
- Configurer les scopes 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
-
Enregistrez votre application.
- Sélectionnez Application Type comme Application monopage.
- Ajoutez
http://localhost:3000ethttp://localhost:3000/callback.htmlaux Allowed Callback URLs.
- Téléchargez l’application exemple. Pour savoir comment configurer l’application exemple, consultez le 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’ des jetons obtenus pour cette API est RS256; vous devez le laisser tel quel. Pour en savoir plus, consultez Enregistrer des API.
Configurer les autorisations pour l’API logique
read sur une API appelée calendar et sur une autre appelée contacts; vous devrez donc créer les autorisations suivantes :
read:calendarread:contacts
Accorder l’accès à l’API logique
- Si vous avez une application Machine-to-Machine, vous pouvez l’autoriser à demander des jetons d’accès pour votre API en utilisant un flux d’identification du client.
- Si vous créez une application native, vous pouvez implémenter le flux de code d’autorisation avec preuve de clé pour l’échange de code (PKCE).
-
L’utilisateur clique sur Login dans l’application monopage, et l’application redirige l’utilisateur 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 à l’aide du 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 à l’aide de l’une des options de connexion configurées.

-
S’il s’agit de la première fois que l’utilisateur passe par ce flux, il voit une invite de consentement énumérant les autorisations qu’Auth0 accordera à l’application monopage. Dans ce cas, l’utilisateur doit consentir à ce que l’application lise ses contacts et son calendrier.

-
Si l’utilisateur y consent, Auth0 le redirige vers l’application monopage avec des jetons dans le fragment hash de l’URI. L’application monopage peut maintenant extraire les jetons du fragment hash à l’aide de JavaScript et utiliser le jeton d’accès pour appeler vos API au nom de l’utilisateur.
Dans notre exemple, une fois la connexion réussie, vous verrez des boutons qui vous permettent d’appeler l’une ou l’autre de vos API à l’aide du jeton d’accès obtenu de l’API logique.

Implémenter la déconnexion unique (SLO) ou l’authentification unique (SSO)
checkSession() afin de vérifier si une session existe. Si aucune session n’existe, vous pouvez alors déconnecter l’utilisateur de l’application. La même méthode de scrutation peut aussi être utilisée pour implémenter l’authentification silencieuse dans un scénario d’ (SSO).
L’intervalle de scrutation entre les vérifications à checkSession() doit être d’au moins 15 minutes afin d’éviter tout problème futur lié à la limite de débit de cet appel.