Envoi d’invitations par courriel pour l’inscription à une application

Pour limiter le nombre d’inscriptions d’utilisateurs ou créer des comptes en masse, l’application peut envoyer des invitations.

Voici les étapes typiques du flux de production d’une invitation pour les utilisateurs :

  1. L’administrateur crée un compte utilisateur.

  2. L’administrateur transmet à l’utilisateur un courriel d’invitation pour qu’il s’inscrive.

  3. L’utilisateur clique sur le lien contenu dans le courriel d’invitation pour définir un mot de passe pour son compte.

  4. L’utilisateur crée et confirme un mot de passe.

  5. L’utilisateur se connecte.

Générer des invitations

En réalité, une invitation pour un utilisateur est un lien permettant de modifier son mot de passe sous forme d’invitation. Le courriel d’invitation de l’utilisateur est dérivé du modèle de « modification du mot de passe ». Il y a deux méthodes courantes pour la mise en œuvre des invitations d’utilisateurs avec Auth0 :

Vous pouvez autoriser un utilisateur à accéder à un compte existant que vous avez créé en son nom. Ensuite, envoyez à l’utilisateur un lien unique pour qu’il puisse définir son mot de passe. Vous générez le lien unique en créant un ticket de modification de mot de passe dans lequel votre application d’invitation appelle le point de terminaison /password-changeManagement API. Vous aurez besoin de :

Créer des tickets de modification de mot de passe

  1. Précisez l’utilisateur à l’aide de user_id ou du courriel et de connection_id au point de terminaison de Management API.

  2. Précisez où la redirection envoie l’utilisateur. Le paramètre result_url est l’emplacement de la redirection que votre application envoie à l’utilisateur après qu’il a défini son mot de passe. Dans ce cas, le result_url doit être la page de connexion de votre application. Pour en savoir plus, consultez Rediriger les utilisateurs après la connexion. Vous pouvez également utiliser le paramètre client_id illustré ci-dessous. Après que le client a vérifié son courriel, il est redirigé vers l’URI de connexion par défaut de votre client.

  3. Précisez la durée de vie du lien d’invitation. Grâce au paramètre ttl_sec, vous pouvez déterminer la durée pendant laquelle le lien d’invitation restera actif. Le paramètre ttl_sec doit être conforme à vos exigences en matière de sécurité. Le lien est conçu pour une seule utilisation. Une fois que l’utilisateur a créé un mot de passe, il ne peut plus être réutilisé.

  4. Vérifiez l’adresse courriel. Si le courriel est envoyé à un compte de courriel enregistré, le paramètre mark_email_as_verified doit être défini à true. Vous ne devez pas définir la vérification du courriel à true si le compte de courriel n’est pas enregistré. Une demande réussie à ce point de terminaison renvoie une URL de ticket. Vous utiliserez cette URL pour créer l’invitation de l’utilisateur.

Pour en savoir plus, consultez Configuration des itinéraires de connexion par défaut.

curl -- request POST \
  --url 'https://{yourAuth0Tenant}/api/v2/tickets/password-change' \
  --header "Content-Type: application/json" \
  --data '{"user_id":,{yourUserID}","client_id":"{yourClientID","ttl_sec":0,"mark_email_as_verified":true,"includeEmailInRedirect":false}'

Was this helpful?

/

Ajouter des paramètres de requête à l’URL

Vous pouvez ajouter des paramètres de requête à l’URL pour personnaliser l’interface utilisateur de réinitialisation du mot de passe. L’URL renvoyée comporte une valeur de code unique qui permet à l’utilisateur de définir son mot de passe, suivie d’un symbole #. Ne modifiez rien avant le symbole #.

Ajoutez un paramètre pour préciser un ensemble de mots de passe pour l’interface utilisateur du flux de production. Exemple :

#type=invite

Was this helpful?

/

Ajoutez un paramètre pour identifer l’application cible. Exemple :

#app=AppName

Was this helpful?

/

Créer un modèle de courriel

Le courriel d’invitation doit être envoyé avec votre fournisseur de services de courriel existant. Personnalisez le modèle de courriel de modification du mot de passe pour que la langue du courriel corresponde à votre cas d’utilisation. Incluez le lien généré en suivant les étapes ci-dessus. Le texte du courriel doit expliquer :

  • Les prochaines étapes pour réclamer le compte utilisateur.

  • La durée de validité du lien.

  • Les étapes pour générer une nouvelle invitation si le lien a expiré.

Par exemple, lors de la création de l’utilisateur à inviter, vous pouvez ajouter une propriété à user.app_metadata qui indique que ce compte utilisateur a été invité. Ensuite, dans votre modèle de courriel, vous pouvez rechercher cette propriété :

{% if user.app_metadata.invitedToMyApp == true %}
  // user invitation email
{% else %}
  // password change email
{% endif %}

Was this helpful?

/

Personnaliser l’interface utilisateur de réinitialisation du mot de passe

En cliquant sur le lien dans le courriel d’invitation, l’utilisateur est redirigé vers la page de réinitialisation du mot de passe de la connexion universelle. C’est là qu’il a la possibilité de créer un mot de passe pour son compte. Cette page sert à la fois à générer des mots de passe oubliés et à inviter vos utilisateurs. Pour régler le flux de production des invitations et adapter l’interface utilisateur en conséquence, il est recommandé d’utiliser les paramètres de requête que vous avez définis précédemment. Pour en savoir plus, consultez Personnalisation de la page de réinitialisation du mot de passe.

Compléter l’expérience utilisateur

Dans la plupart des cas, une fois que l’utilisateur a défini son mot de passe, vous lui accordez l’accès à l’application cible. L’application cible lance la séquence de connexion avec les étapes suivantes :

  1. L’utilisateur soumet son mot de passe.

  2. L’écran de modification du mot de passe redirige l’URL de retour.

  3. L’application cible redirige vers /authorize.

  4. L’utilisateur soumet ses identifiants.

  5. L’utilisateur est authentifié dans l’application.

Le flux de production comprend des redirections. Cependant, il est possible que la transition entre le formulaire de définition du mot de passe et le formulaire de connexion soit transparente pour l’utilisateur final.

Si vous utilisez la connexion classique, la result_url que vous avez défini lors de la création du ticket de modification de mot de passe est l’endroit où l’utilisateur sera redirigé après avoir créé son mot de passe. Dans ce cas, vous souhaitez que l’URL se trouve sur le site où l’utilisateur a été invité afin qu’il puisse lancer le flux de production de la connexion. Votre application cible devra analyser le paramètre success pour confirmer qu’aucune erreur ne s’est produite, puis lancer immédiatement la redirection vers Auth0 pour connecter l’utilisateur.

Pour optimiser l’expérience utilisateur, vous pouvez demander à l’application cible d’analyser le paramètre email et de l’inclure dans la requête d’authentification en tant que paramètre login_hint. L’adresse courriel de l’utilisateur sera automatiquement insérée dans le formulaire de connexion.

En savoir plus