Auth0 supporte la liaison des comptes d’utilisateurs de différents fournisseurs d’identité. Une façon de mettre en œuvre cette fonctionnalité est d’autoriser l’utilisateur à lier explicitement les comptes. Dans ce scénario, l’utilisateur s’authentifie par l’intermédiaire de l’interface utilisateur de votre Application à page unique (SPA) et peut ensuite utiliser un lien ou un bouton pour lier un autre compte au premier. Lorsque l’utilisateur clique sur ce lien/bouton, votre application effectue un appel de sorte que lorsque l’utilisateur se connecte avec le deuxième fournisseur, le deuxième compte est lié au premier. Lorsque vous lancez l’association de comptes, vous pouvez sélectionner l’identité à utiliser comme compte principal et celle qui sera utilisée comme compte secondaire. Ce choix dépend de l’ensemble d’attributs que vous souhaitez conserver dans le profil principal, car vous ne conserverez que les attributs du compte principal. Créer un un modèle React d’application à page unique avec ce projet sur GitHub. Dans ce projet, ouvrez le fichierDocumentation Index
Fetch the complete documentation index at: https://auth0-feat-ionic-capacitor-quickstart-modernization.mintlify.app/llms.txt
Use this file to discover all available pages before exploring further.
auth_config.json dans votre éditeur de texte et mettez à jour les identifiants du domaine et le client_id avec vos informations.
Ajouter http://localhost:3000 au champs « URL de rappel autorisées », « URL de déconnexion autorisées », « Origines Web autorisées ».
- Connectez l’utilisateur à votre application. L’utilisateur s’authentifie auprès de votre SPA en utilisant Connexion universelle, demandant un Jeton d’accès à Management API. Lors d’une connexion SPA typique, la fonction de rappel est traitée côté client par la même page, et un JWT est reçu après une authentification réussie. Pour en savoir plus, consultez le Démarrage rapide de l’application à page unique.
-
L’utilisateur initie la liaison de compte. Votre SPA doit fournir une interface utilisateur pour que l’utilisateur puisse établir un lien avec ses autres comptes. Par exemple, votre SPA pourrait contenir la page des paramètres d’un utilisateur :
Lorsque l’utilisateur clique sur le bouton Lier le compte, votre application redirige l’utilisateur vers la page Connexion universelle lorsqu’il se connecte avec la connexion à laquelle il souhaite établir un lien. Après une authentification réussie, utilisez le jeton obtenu pour lier les comptes.
Vous pouvez également ajouter un bouton pour chaque connexion (p. p.ex., ‘Lier le compte Facebook’, ‘Lier le compte Google’) et rediriger l’utilisateur vers
/authorizeavec le paramètre deconnectiondéfini (/authorize?connection=facebook).
- Lier les comptes en appelant le Link a User Account endpoint (Point de terminaison Lier un compte d’utilisateur) de Management API Auth0
-
Dans la fonction
linkAccount, appelez Management API. Authentifiez-vous avec l’API à l’aide du JWT principal, qui est le Jeton d’accès, et liez en utilisant l’ID de l’utilisateur principal et le JWT secondaire, qui est le Jeton d’ID de l’utilisateur secondaire.
Association de comptes : jetons d’accès par rapport aux jetons d’ID
Antérieurement, dans certains cas, vous pouviez utiliser des jetons d’ID pour associer et désassocier des comptes d’utilisateurs. Cette fonctionnalité est en train de devenir obsolète. Vous devrez utiliser des jetons d’accès dans tous les cas. La modification dans la dissociation des comptes est que vous ne pouvez plus utiliser un jeton d’ID dans l’en-tête Authorization. Un jeton d’accès doit plutôt être utilisé. Cette fonctionnalité est encore disponible, mais non recommandée, et les utilisateurs affectés sont encouragés à procéder à une migration. Voir Guide de migration : association de comptes avec des jetons d’accès par rapport aux jetons d’ID pour plus de détails.