Avant de commencer
- Créez une application Machine-to-Machine avec les scopes suivants activés :
read:usersupdate:userscreate:usersread:users_app_metadataupdate:users_app_metadatacreate:users_app_metadata
- Ajoutez une connexion Vault à l’aide des identifiants de l’application M2M.
app_metadata.

Créer un formulaire à partir de zéro
Suivez ces étapes pour créer un formulaire afin de recueillir des informations :- Ouvrez l’éditeur de formulaires en sélectionnant Auth0 Dashboard > Actions > Forms.
- Sélectionnez Create Form > Start from scratch.

Configurer le nœud Step
Le nœud Step est l’interface graphique visible par les utilisateurs. Ajoutez des champs au nœud Step pour recueillir la nouvelle valeur d’acceptation en suivant ces étapes :-
Faites glisser un champ Texte enrichi du menu Composants vers le nœud Step.
- Texte enrichi : Saisissez une description des mises à jour apportées à votre politique de confidentialité.
- Sélectionnez Enregistrer.
-
Faites glisser un champ Juridique vers le nœud Step.
- ID : Saisissez
privacy_policies. - Obligatoire : Cochez la case.
- Juridique : Saisissez
J’accepte la politique de confidentialité. - Sélectionnez Enregistrer.
- ID : Saisissez
- Sélectionnez Publier pour enregistrer.

Configurer le nœud Flow
Ajoutez un nœud Flow après le nœud Step pour mettre à jourapp_metadata et reprendre le flux d’authentification en suivant les étapes ci-dessous :
- Sélectionnez Flow au bas de l’éditeur de formulaires.
- Supprimez le lien existant entre les nœuds Step et Ending Screen.
-
Sélectionnez le nouveau Flow > Click to add a flow > Create a new flow.
- Entrez
Update app_metadatadans le champ Name. - Sélectionnez Create.
- Sélectionnez Save.
- Entrez
- Reliez le nœud Flow aux nœuds Step et Ending Screen, comme illustré ci-dessous.
- Sélectionnez Publish pour enregistrer.

- Sélectionnez Flow Update app_metadata > Edit flow pour ouvrir l’éditeur de flux dans un nouvel onglet.
-
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 : Entrez
{{context.user.user_id}}. -
Body : Copiez-collez le code suivant pour mettre à jour
app_metadataavec les propriétésprivacy_policiesetprivacy_policies_timestamp. - Sélectionnez Save.
- Sélectionnez Publish pour enregistrer.

Le flux Update app_metadata ajoute la valeur
privacy_policies true à l’objet app_metadata et génère aussi un horodatage à l’aide d’une fonction utilitaire.Récupérer le code de rendu du formulaire
Récupérez le code de rendu de votre formulaire afin d’afficher le formulaire au moyen d’une Action Post Login personnalisée en suivant ces étapes :- Dans l’éditeur de formulaires, sélectionnez
<> Render. - Sélectionnez Copy.

Créer une Action Post Login
Créez une action post-login pour afficher votre formulaire en suivant les étapes ci-dessous :- Accédez à Auth0 Dashboard > Actions > Flows > Login.
-
Sélectionnez l’icône +, puis Build from scratch :
- Nom : Entrez
Render Update Policy Form. - Déclencheur : Sélectionnez
Login / Post Login. - Runtime : Sélectionnez la version recommandée.
- Nom : Entrez
- Sélectionnez Créer.
- Supprimez le code existant dans l’éditeur de code.
- Collez le code de rendu du formulaire dans l’éditeur de code.
-
Modifiez le code pour définir la logique conditionnelle qui affichera le formulaire.
L’exemple de code ci-dessus affichera le formulaire si la propriété
privacy_policiesest absente de l’objet app metadata de l’utilisateur. - Sélectionnez Déployer.
-
Glissez-déposez l’Action Render Update Policy Form dans le flux de Login.

- Sélectionnez Appliquer.
Test de la mise en œuvre
Testez la mise en œuvre en suivant ces étapes :- Connectez-vous avec un utilisateur existant dont l’attribut app
_metadataprivacy_policiesn’a aucune valeur. - L’Action post-login dans le flux de Login affichera le formulaire et demandera l’acceptation.
- Sélectionnez Auth0 Dashboard > User Management > Users, repérez l’utilisateur et vérifiez que l’attribut
app_metadataprivacy_policiescontient la valeurtrueainsi qu’un horodatage.