Passer au contenu principal

Avant de commencer

  1. Créez une application machine à 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 de créer des flux personnalisés de politique de confidentialité et de stocker le consentement dans l’objet app_metadata.
Auth0 Dashboard > Actions > Forms > Cas d’utilisation de politique de confidentialité
Les sections ci-dessous expliquent comment créer un formulaire de mise à jour de politique à l’aide de nœuds et de flux, ainsi que les étapes à suivre pour ajouter votre formulaire à une Action Post Login.

Créer un formulaire à partir de zéro

Suivez ces étapes pour créer un formulaire et recueillir des renseignements :
  1. Ouvrez l’éditeur de formulaires en sélectionnant Auth0 Dashboard > Actions > Forms.
  2. Sélectionnez Créer un formulaire > À partir de zéro.
Par défaut, un nouveau formulaire contient un nœud de début, un nœud d’étape et un nœud d’écran final.
Auth0 Dashboard > Forms > Cas d’utilisation > Formulaire

Configurer le nœud Step

Le nœud Step est l’interface graphique que les utilisateurs voient. Ajoutez des champs au nœud Step pour recueillir la nouvelle valeur d’acceptation de l’accord en suivant ces étapes :
  1. Faites glisser un champ Rich text depuis le menu Components dans le nœud Step.
    • Rich text : Entrez une description des mises à jour de votre politique de confidentialité.
    • Sélectionnez Save.
  2. Faites glisser un champ Legal dans le nœud Step.
    • ID : Entrez privacy_policies.
    • Required : Cochez la case.
    • Legal : Entrez I agree to the Privacy Policy.
    • Sélectionnez Save.
  3. Sélectionnez Publish pour enregistrer.
Auth0 Dashboard > Actions > Forms > Cas d’utilisation de la politique de confidentialité du nœud Step

Configurer le nœud Flow

Ajoutez un nœud Flow après le nœud Step pour mettre à jour app_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 app_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 > Form
Ajoutez une action Auth0 Update user au flux en suivant les étapes ci-dessous :
  1. Sélectionnez Flow Update app_metadata > Edit flow pour ouvrir l’éditeur de flux dans un nouvel onglet.
  2. Sous 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 associée à votre application M2M.
    • User ID : Saisissez {{context.user.user_id}}.
    • Body : Copiez-collez le code suivant pour mettre à jour app_metadata avec les propriétés privacy_policies et privacy_policies_timestamp.
      {
        "app_metadata": {
          "privacy_policies": true,
          "privacy_policies_timestamp": "{{ functions.toTimestamp() }}"
        }
      }
      
    • Sélectionnez Save.
  3. Sélectionnez Publish pour enregistrer.
Dashboard > Actions > Forms > User case privacy policy code
Le flux Update app_metadata ajoute une valeur privacy_policies true à l’objet app_metadata et génère également un horodatage à l’aide d’une fonction d’assistance.

Récupérer le code de rendu du formulaire

Récupérez le code de rendu de votre formulaire pour afficher le formulaire à l’aide d’une Action Post Login personnalisée en suivant ces étapes :
  • Dans l’éditeur de formulaires, sélectionnez <> Render.
  • Sélectionnez Copy.
Auth0 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 Update Policy 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 du flux de connexion.
    */
    exports.onExecutePostLogin = async (event, api) => {
      const FORM_ID = 'REPLACE_WITH_YOUR_FORM_ID';
    
      if (event.user.app_metadata.privacy_policies !== true) {
        api.prompt.render(FORM_ID);
      }
    }
    
    exports.onContinuePostLogin = async (event, api) => { }
    
    L’exemple de code ci-dessus affichera le formulaire si la propriété privacy_policies est absente des métadonnées d’application de l’utilisateur.
  4. Sélectionnez Deploy.
  5. Glissez-déposez l’Action Render Update Policy Form dans le flux Login.
    Auth0 Dashboard > Forms > Cas d’utilisation > Action de connexion pour le rendu du formulaire de mise à jour de la stratégie
  6. Sélectionnez Apply.

Tester l’implémentation

Testez l’implémentation en suivant ces étapes :
  1. Connectez-vous avec un utilisateur existant dont l’attribut privacy_policies de app_metadata n’a aucune valeur.
  2. L’Action Post Login dans le flux Login affichera le formulaire et demandera l’acceptation.
  3. Sélectionnez Auth0 Dashboard > User Management > Users, repérez l’utilisateur et vérifiez que l’attribut privacy_policies de app_metadata contient la valeur true ainsi qu’un horodatage.