Passer au contenu principal

Avant de commencer

  1. Créez une application Machine-to-Machine avec les scopes suivants activés :
  • read:users
  • update:users
  • create:users
  • read:users_app_metadata
  • update:users_app_metadata
  • create:users_app_metadata
  1. Ajoutez une connexion Vault à l’aide des identifiants de l’application M2M.
Forms for Actions vous permet d’ajouter des étapes supplémentaires à vos flux d’inscription ou de connexion et de les rendre obligatoires avant d’autoriser les utilisateurs à accéder à votre application.
Dashboard > Actions > Forms > Cas d’utilisation : formulaire d’inscription personnalisé
Les sections ci-dessous expliquent comment créer des formulaires pour ajouter des étapes d’inscription supplémentaires à l’aide de nœuds et de flux, ainsi que comment ajouter votre formulaire à une action Post Login.

Créer un formulaire à partir de zéro

Suivez ces étapes pour créer un formulaire afin de recueillir des informations :
  1. Ouvrez l’éditeur de formulaires en sélectionnant Auth0 Dashboard > Actions > Forms.
  2. Sélectionnez Create Form > Start from scratch.
Par défaut, un nouveau formulaire comprend un nœud Start, un nœud Step et un nœud Ending screen.
Dashboard > Forms > Use Cases > Form

Configurer le nœud Step

Le nœud Step est l’interface graphique visible aux utilisateurs. Ajoutez des Fields au nœud Step pour recueillir le nom complet et le titre du poste de l’utilisateur en suivant les étapes ci-dessous :
  1. Faites glisser un champ Rich text du menu Components vers le nœud Step.
    • Rich text : Saisissez un message personnalisé.
    • Sélectionnez Save.
  2. Faites glisser un champ Text vers le nœud Step.
    • ID : Saisissez full_name.
    • Label : Saisissez Full name.
    • Label : Cochez la case.
    • Required : Cochez la case.
    • Sélectionnez Save.
  3. Faites glisser un champ Text vers le nœud Step.
    • ID : Saisissez job_title.
    • Label : Saisissez Job title.
    • Label : Cochez la case.
    • Required : Cochez la case.
    • Sélectionnez Save.
  4. Sélectionnez Publish pour enregistrer.
Dashboard > Actions > Forms > Use Case Custom Signup Steps Step node

Configurer le nœud Flow

Ajoutez un nœud Flow après le nœud Step pour mettre à jour user_metadata et reprendre le flux d’authentification en suivant les étapes ci-dessous :
  1. Sélectionnez Flow au bas de l’éditeur de formulaires.
  2. Supprimez le lien existant entre les nœuds Step et Ending Screen.
  3. Sélectionnez le nouveau Flow > Click to add a flow > Create a new flow.
    • Saisissez Update user_metadata dans le champ Name.
    • Sélectionnez Create.
    • Sélectionnez Save.
  4. Reliez le nœud Flow aux nœuds Step et Ending Screen, comme illustré ci-dessous.
  5. Sélectionnez Publish pour enregistrer.
Dashboard > Actions > Forms > Cas d’utilisation Custom Signup Step Update User metadata flow
Ajoutez une action Auth0 Update user au flux en suivant les étapes ci-dessous :
  1. Sélectionnez Flow Update user_metadata > Edit flow pour ouvrir l’éditeur de flux dans un nouvel onglet.
  2. Sous le StartAction, sélectionnez l’icône + pour ajouter une action Update user. Remplissez les champs ci-dessous, puis sélectionnez Save pour continuer.
    • Connection : Dans la liste déroulante, sélectionnez la connexion Vault de votre application M2M.
    • User ID : Saisissez {{context.user.user_id}}.
    • Body : Copiez-collez le code suivant pour mettre à jour user_metadata avec les propriétés full_name et job_title.
      {
        "user_metadata": {
          "full_name": "{{fields.full_name}}",
          "job_title": "{{fields.job_title}}"
        }
      }
      
    • Sélectionnez Save.
  3. Sélectionnez Publish pour enregistrer.

Récupérez le code de rendu de votre formulaire

Pour afficher visuellement le formulaire avec une action Post Login personnalisée, récupérez le code de rendu de votre formulaire en suivant ces étapes :
  • Dans l’éditeur de formulaires, sélectionnez <> Render.
  • Sélectionnez Copier.
Dashboard > Actions > Forms > Form > Embed

Créer une action Post Login

Créez une action Post Login pour afficher votre formulaire en suivant ces étapes :
  1. Accédez à Auth0 Dashboard > Actions > Flows > Login.
  2. Sélectionnez l’icône +, puis Build from scratch :
    • Name : Entrez Render Additional Signup Form.
    • Trigger : Sélectionnez Login / Post Login.
    • Runtime : Sélectionnez la version recommandée.
  3. Sélectionnez Create.
Pour configurer l’action Post Login :
  1. Supprimez le code existant dans l’éditeur de code.
  2. Collez le code de rendu du formulaire dans l’éditeur de code.
  3. Modifiez le code pour définir la logique conditionnelle qui affichera le formulaire.
    /**
    * @param {Event} event - Détails sur l’utilisateur et le contexte dans lequel il se connecte.
    * @param {PostLoginAPI} api - Interface dont les méthodes peuvent être utilisées pour modifier le comportement de la connexion.
    */
    exports.onExecutePostLogin = async (event, api) => {
      const FORM_ID = 'REPLACE_WITH_YOUR_FORM_ID';
    
      if (
        !event.user.user_metadata.full_name &&
        !event.user.user_metadata.job_title
      ) {
        api.prompt.render(FORM_ID);
      }
    }
    
    exports.onContinuePostLogin = async (event, api) => { }
    
    L’exemple de code ci-dessus affichera le formulaire si les propriétés de métadonnées utilisateur full_name et job_title sont absentes.
  4. Sélectionnez Deploy.
  5. Faites glisser l’action Render Additional Signup Form dans le flux Login.
    Dashboard > Forms > Use Cases Custom Signup Steps Login Flow
  6. Sélectionnez Apply.

Tester l’implémentation

Testez l’implémentation en suivant ces étapes :
  • Inscrivez un nouvel utilisateur à l’application.
  • L’action post-login dans le flux Login affichera le formulaire et demandera les renseignements requis.
  • Sélectionnez > User Management > Users, repérez le nouvel utilisateur et vérifiez que ses attributs full_name et job_title contiennent les renseignements fournis à l’étape d’inscription supplémentaire.