Planifiez votre migration
Conseils pour planifier votre migration
- Utilisez des indicateurs pour éviter de dupliquer des opérations coûteuses ou ponctuelles.
- Assurez-vous d’effectuer les changements à un moment où l’impact et le trafic seront au plus bas.
- Envisagez d’utiliser Auth0 Deploy CLI pour automatiser par script, tester et mettre en œuvre rapidement la migration, en une seule fois ou de façon itérative.
Comprendre les limites
- Les Actions ne peuvent pas conserver des données, comme des ou des réponses d’API, d’une exécution à l’autre.
- Les Actions ne disposent ni d’un jeton d’accès pour la Management API ni d’un accès à l’objet global
auth0, contrairement aux Hooks.
Convertir le code
Conseils pour convertir le code
- En général, recherchez les propriétés en lecture seule des objets transmis à la fonction Hooks dans l’objet
eventd’Actions. - Utilisez l’éditeur de code d’Actions dans Auth0 Dashboard pour écrire votre code; il vous aidera en mettant les erreurs en évidence et en proposant des suggestions d’autocomplétion.
- Avant la mise en production, testez soigneusement vos nouvelles Actions dans un environnement de préproduction ou de test.
Copier le code d’un Hook dans une nouvelle Action
Nous vous recommandons de copier le code de votre Hook dans une nouvelle Action et d’utiliser l’éditeur de code d’Actions dans Auth0 Dashboard ; cela vous aidera à repérer les problèmes non résolus dans votre code.
- Connectez-vous à votre locataire de production, puis copiez le code du Hook que vous souhaitez convertir.
- Basculez vers un locataire hors production, puis accédez à Auth0 Dashboard > Actions > Library.
-
Sélectionnez Build Custom, puis :
- Saisissez un Name pour votre Action qui correspond au nom du Hook que vous convertissez.
-
Repérez Trigger, puis sélectionnez le déclencheur d’Actions approprié** :**
Type de Hook Déclencheur d’Actions Client Credentials Exchange M2M/Client-Credentials Pre-User-Registration Pre User Registration Post-User-Registration Post User Registration Post-Change-Password Post Change Password Envoi d’un message téléphonique Envoi d’un message téléphonique - Repérez Runtime, puis sélectionnez Node 18.
- Sélectionnez Create.
- Dans le bloc de code de l’éditeur de code d’Actions, collez le code du Hook que vous souhaitez convertir sous la fonction exportée.
-
Apportez les modifications décrites dans le reste de cet article à mesure que vous déplacez le code dans la fonction.
Vous devriez aussi consulter l’objet
eventassocié au nouveau déclencheur d’Actions ; vous verrez des liens vers la documentation pertinente plus loin dans ce guide, lorsque vous arriverez à la section Modifier la façon dont les données sont accessibles.
Modifier la déclaration de fonction
| Type de Hook | Export nommé |
|---|---|
| Échange d’identifiants d’application | onExecuteCredentialsExchange |
| Préinscription de l’utilisateur | onExecutePreUserRegistration |
| Post-inscription de l’utilisateur | onExecutePostUserRegistration |
| Après le changement de mot de passe | onExecutePostChangePassword |
| Envoi d’un message téléphonique | onExecuteSendPhoneMessage |
Convertir les dépendances
require avec n’importe quel package disponible dans le registre npm.
Si vos modules
npm ne sont pas à la dernière version, c’est le moment idéal pour les mettre à jour!- Recherchez les instructions
requiredans le code de votre Hook. - Supprimez les numéros de version, mais prenez-en note.
- Ajoutez la dépendance en suivant les étapes de la section « Add a Dependency » de Write Your First Action (si la dépendance n’est pas un module de base de Node.js; si c’est un module de base de Node.js, vous n’avez pas besoin de l’inclure).
- Déplacez les instructions
requiretrouvées à l’extérieur de la déclarationfunction.
Convertir les secrets
- Enregistrez les valeurs nécessaires pour l’Action sur laquelle vous travaillez.
- Ajoutez un secret pour chaque valeur à laquelle vous devez accéder depuis l’Action. Pour savoir comment faire, consultez la section Ajouter un secret dans Write Your First Action.
- Convertissez votre code :
Modifier la façon d’accéder aux données
event. Bon nombre des propriétés ont été reprises telles quelles, mais certaines ont été regroupées pour plus de clarté.
Selon le type de Hook que vous convertissez, l’objet event sera différent :
- Échange d’identifiants d’application - objet d’événement d’Actions
- Après le changement de mot de passe - objet d’événement d’Actions
- Après l’inscription de l’utilisateur - objet d’événement d’Actions
- Préinscription de l’utilisateur - objet d’événement d’Actions
- Envoi d’un message téléphonique - objet d’événement d’Actions
Contrairement à l’objet
context de Hooks, les données stockées dans les propriétés de l’objet event ou modifiées dans celles-ci ne sont pas conservées dans les Actions suivantes. Si votre Hook définit des données dans ces propriétés pour déclencher des fonctionnalités principales, vous devrez utiliser l’interface api offerte dans les flux Actions Machine to Machine et Pre User Registration afin de conserver les données d’une Action à l’autre.Convertir les fonctions de rappel
callback() pour terminer son exécution. À l’inverse, Actions n’utilise pas de mécanisme de fonction de rappel; vous devrez donc supprimer toutes les occurrences de callback() de votre fonction Actions.
Si vous utilisiez auparavant la fonction callback() dans un Hook Échange d’identifiants d’application ou Pre User Registration pour faire échouer la requête ou mettre à jour un utilisateur, vous pourrez toujours le faire dans Actions au moyen d’une nouvelle interface api.