Avant de commencer
- Créez un tenant Auth0 pour enregistrer et configurer vos applications natives et Web.
- Installez et configurez Auth0 CLI pour votre tenant Auth0.
- Ajoutez l’authentification Auth0 à votre application native à l’aide des Quickstarts appropriés pour votre plateforme :
- Ajoutez la prise en charge de refresh_token à votre application native.
- Ajoutez l’authentification Auth0 à votre application Web à l’aide du Quickstart React Single Page App.
session_transfer_token sécurisé à courte durée de vie.
Les sections ci-dessous expliquent comment ajouter :
- À votre application native, un bouton S’abonner maintenant qui permet aux utilisateurs authentifiés de souscrire à un forfait d’adhésion payant au moyen d’une expérience de paiement sécurisée sur le Web.
- À votre application Web, une page d’abonnement qui permet à l’utilisateur de sélectionner un abonnement d’adhésion sans avoir à se reconnecter.
Ce cas d’utilisation met l’accent sur les applications Web basées sur React qui utilisent le Auth0 React SDK.Si vous utilisez un autre framework, comme Node ou Express, la logique de gestion du
session_transfer_token, que ce soit au moyen d’un paramètre d’URL ou d’un cookie, peut être adaptée en conséquence.Configurer l’Auth0 CLI
Utilisez l’Auth0 CLI pour configurer votre tenant Auth0. Vous pouvez aussi utiliser l’Auth0 Management API; pour en savoir plus, consultez Configurer Native to Web SSO.
- Initialisez l’Auth0 CLI
- Sélectionnez En tant qu’utilisateur et suivez le flux de connexion.
- Sélectionnez le tenant Auth0 où vous souhaitez activer Native to Web SSO.
Configurer Auth0
Activez Native to Web SSO dans votre application native
session_transfer_token pour établir une session SSO entre une application native et une application Web. Le session_transfer_token permet à Auth0 d’identifier de façon sécuritaire l’utilisateur, l’application native d’origine et du contexte supplémentaire. Pour en savoir plus, consultez Native to Web SSO.
Activez Native to Web SSO à l’aide d’Auth0 CLI :
Activez Native to Web SSO dans votre application web
session_transfer_token pour l’authentification au moyen d’un cookie ou d’un paramètre d’URL à l’aide d’Auth0 CLI :
Si le session_transfer_token est injecté dans le navigateur au moyen d’un cookie, aucune autre modification n’est nécessaire dans votre application web. La seule condition est que le navigateur accède à l’URI de connexion de votre application afin de traiter la redirection de l’utilisateur vers le point de terminaison /authorize de votre tenant Auth0.
Vous pouvez configurer l’URI de connexion de l’application dans les paramètres de votre application dans l’Auth0 Dashboard. C’est la route vers laquelle Auth0 redirigera les utilisateurs lorsqu’une connexion est lancée à partir de sources externes.
Créer une page d’abonnement dans l’application Web
/src/views/ pour créer une page d’abonnement :
Étape 1 : Ajouter un nouveau fichier de vue
src/views/JoinMembership.js. Ce fichier invitera les utilisateurs à souscrire à un abonnement payant.
Étape 2 : Ajouter une nouvelle route
src/App.js et ajoutez une route /join-membership à la nouvelle page d’abonnement :
/join-membership :
- Détermine si l’utilisateur est authentifié. Sinon, il sera redirigé vers la page .
- Si un
session_transfer_tokenest ajouté en tant que paramètre d’URL, le token est transmis dans la requête d’authentification. - Une fois authentifié, l’utilisateur verra des boutons pour s’abonner à différents forfaits d’adhésion.
Configurer l’application native
refresh_token contre un session_transfer_token immédiatement avant de lancer l’application web. Pour ce faire, ajoutez l’échange de transfert de session et la logique de lancement de l’application web dans le même gestionnaire d’événement, par exemple la méthode onClick du bouton.
iOS
Subscribe to Membership au fichier ProfileView.swift.
Modifiez le contenu du fichier ProfileView.swift pour y ajouter un bouton sous les renseignements de l’utilisateur :
ProfileView.swift ajoute un bouton S’abonner à l’adhésion et utilise une closure onSubscribe pour définir le comportement lorsqu’on appuie sur ce bouton.
Étape 2 : Mettez en place le flux d’abonnement à l’aide de Native to Web SSO
MainView.swift pour définir le comportement du bouton S’abonner à l’adhésion :
Cet exemple utilise l’audience
https://sample.api.com à des fins de démonstration. Vous pouvez créer une API avec cet identifiant dans votre tenant Auth0 ou le remplacer par l’identifiant de votre propre API.Pour en savoir plus, consultez Configurer les API.S’abonner à l’adhésion dans l’application native et de lancer immédiatement le processus d’abonnement dans l’application web sans avoir à se reconnecter.
Android
Adhérer à l’interface utilisateur.
Modifiez le fichier MainActivity.kt et ajoutez le code suivant à la méthode onCreate() :
activity_main.xml pour y inclure le code ci-dessous après le bouton @+id/button_patch_metadata :
Étape 2 : Implémenter le flux d’abonnement avec Native to Web SSO
MainActivity.kt pour définir le comportement du bouton S’abonner à l’adhésion :
- Étendez le flux de connexion et gérez l’action d’abonnement :
- Mettez à jour la méthode
onCreate()pour y inclurecredentialsManager:
- Mettez à jour la méthode
loginwithBrowser()pour stocker les identifiants au moyen decredentialsManager:
Cet exemple utilise l’audience
https://sample.api.com à des fins de démonstration. Vous pouvez créer une API ayant cet identifiant dans votre tenant Auth0, ou le remplacer par l’identifiant de votre propre API.Pour en savoir plus, consultez Configurer les API.- Ajoutez la méthode
launchSubscriptionFlow()pour ouvrir l’application Web :
S’abonner à l’adhésion dans l’application native et de lancer immédiatement le processus d’abonnement à l’application Web sans avoir à se reconnecter.
Testez votre mise en œuvre de Native to Web SSO
- Le
refresh_tokenstocké est utilisé pour demander unsession_transfer_tokensécurisé - Le
session_transfer_tokenest injecté dans un cookie pour votre domaine Auth0 - Un
WKWebViewest utilisé pour charger la route/join-membershipde votre application web - L’application web reçoit le
session_transfer_tokenet termine l’ouverture de session à l’aide de Native to Web SSO - L’utilisateur voit immédiatement les options d’abonnement dans l’application web
Prochaines étapes
- Découvrez plus d’options de configuration pour Native to Web SSO :Approfondissez la durée de vie de la session, la rotation du , la liaison de l’appareil et la révocation en cascade dans la documentation sur Native to Web SSO.
- Personnalisez l’expérience post-login avec le profilage progressif :Utilisez le formulaire de profil progressif d’Auth0 pour recueillir des données utilisateur supplémentaires après la connexion — comme les préférences de forfait, l’adresse ou l’intention de paiement — avant d’afficher les options d’abonnement.