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’apporter les changements à un moment où l’impact et le trafic seront au plus bas.
- Envisagez d’utiliser le Auth0 Deploy CLI pour écrire des scripts, tester et mettre rapidement en œuvre la migration en une seule fois ou de façon itérative.
Comprendre les limites
- Actions ne peut pas enregistrer de données, comme des ou des réponses d’API, d’une exécution à l’autre.
- Actions ne reçoit pas de jeton d’accès pour la Management API ni d’accès à l’objet global
auth0, comme c’est le cas avec Hooks.
Convertir le code
Conseils pour convertir le code
- De façon générale, recherchez les propriétés en lecture seule des objets transmis à la fonction Hooks dans l’objet
eventdes Actions. - Utilisez l’Actions Code Editor dans l’Auth0 Dashboard pour écrire votre code; il vous aidera à repérer les erreurs et à obtenir 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 du Hook dans une nouvelle Action
Nous vous recommandons de copier votre code Hook dans une nouvelle Action et d’utiliser l’Actions Code Editor dans l’Auth0 Dashboard; il vous aidera à repérer les problèmes non résolus dans votre code.
- Connectez-vous à votre tenant de production et copiez le code du Hook que vous souhaitez convertir.
- Passez à un tenant 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 Trigger approprié**:**
- Repérez Runtime, puis sélectionnez Node 18.
- Sélectionnez Create.
- Dans le bloc de code de l’Actions Code Editor, collez le code 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 Trigger Actions; vous verrez des liens vers la documentation pertinente lorsque vous arriverez plus loin à la section Changer la façon dont les données sont accessibles dans ce guide.
Modifier la déclaration de la fonction
Avant
Convertir les dépendances
npm.
Si vos modules
npm ne sont pas à la version la plus récente, 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 NodeJS intégré; si la dépendance est un module NodeJS intégré, 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 Add a Secret de 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 :
- Client Credentials Exchange - objet d’événement Actions
- Post-Change Password - objet d’événement Actions
- Post-User Registration - objet d’événement Actions
- Pre-User Registration - objet d’événement Actions
- Send Phone Message - objet d’événement Actions
Contrairement à l’objet
context des Hooks, les données stockées dans les propriétés de l’objet event ou modifiées dans celles-ci ne sont pas enregistrées dans les Actions subséquentes. Si votre Hook définit des données dans ces propriétés pour déclencher une fonctionnalité principale, vous devrez utiliser l’interface api offerte dans les Flows d’Actions Machine to Machine et Pre User Registration afin d’enregistrer les données d’une Action à l’autre.Convertir les callbacks
callback() pour terminer son exécution. À l’inverse, Actions n’utilisent pas de mécanisme de callback; vous devrez donc supprimer toutes les occurrences de callback() de votre fonction Actions.
Si vous utilisiez auparavant la fonction callback() dans un Hook Client Credentials Exchange 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.