Découvrez comment rédiger une Action : choisir un flow, créer une Action, la configurer et la lier au flow.
Ce guide vous montrera comment créer et déployer votre première Action à l’aide du . À la fin, vous devriez comprendre les fonctions de base que vous utiliserez avec toutes les Actions et être à l’aise avec le modèle de programmation. Ce que vous apprendrez constitue la base de la rédaction de toute Action, quel qu’en soit l’objectif ou le flow utilisé.
L’objectif : envoyer une notification à Slack lors de la connexion d’un utilisateur
Vous créez une Action qui envoie un message dans un canal Slack lorsqu’un utilisateur se connecte. Bien que ce tutoriel utilise le déclencheur Post Login, les renseignements fournis ici sont utiles pour des déclencheurs de tout type.Pour accomplir cette tâche, vous ferez ce qui suit :
La galerie de modèles pour Actions propose plusieurs modèles de départ pour vous aider à créer une Action. Pour créer une Action à partir d’un modèle :
Chaque Action peut contenir des Secrets, qui conviennent au stockage de renseignements sensibles, comme les et les clés API. Stockons l’URL du webhook Slack dans un Secret.
Sélectionnez l’icône en forme de clé dans la barre latérale gauche de l’éditeur de code
Sélectionnez Add Secret.
Donnez au Secret le nom suivant : SLACK_WEBHOOK_URL.
Collez l’URL du webhook fournie par Slack et sélectionnez Create.
Vous verrez que le Secret a été ajouté à l’Action et vous pourrez utiliser ce nouveau Secret grâce à l’autocomplétion intelligente en tapant event.secrets.
Une fois un Secret créé, sa valeur ne sera jamais affichée. Auth0 chiffre tous les Secrets et les stocke en toute sécurité.
Vous utiliserez le @slack/webhook package npm pour faciliter l’envoi d’un message à Slack. Vous pouvez utiliser presque n’importe quel package npm public dans une Action, à condition qu’il puisse être installé sans dépendre de modules complémentaires natifs.Pour ajouter la dépendance :
Sélectionnez l’icône Dependency (icône en forme de cube) dans la barre latérale.
Pour Name, entrez @slack/webhook.Par défaut, votre Action utilisera la version la plus récente de la dépendance au moment de son ajout.
Sélectionnez Create et la dépendance devrait être ajoutée à l’Action :
Lorsque vous enregistrerez cette Action, la version la plus récente de votre dépendance sera résolue et remplacée par un numéro de version précis afin d’éviter que de futures mises à jour du package ne compromettent votre Action.
Sélectionnez Enregistrer le brouillon. Votre Action est enregistrée, mais elle ne sera pas encore exécutée dans les flux utilisateur. Avec Actions, vous pouvez créer, modifier et tester des Actions avant qu’elles n’aient une incidence sur le trafic de votre tenant Auth0. Une fois que le comportement de l’Action vous convient, vous déploierez l’Action et l’ajouterez à un Flow par la suite.
Maintenant que l’Action a été configurée avec un Secret et une dépendance, passons au code!Chaque Action comporte un objet d’événement contenant des renseignements contextuels en lecture seule pertinents pour le déclencheur associé. Si vous commencez à taper event. dans l’éditeur, toutes les propriétés disponibles de l’événement devraient s’afficher. Pour en savoir plus sur les renseignements offerts pour chaque déclencheur, consultez Explorer les Flows et les déclencheurs.Utilisons notre Action pour envoyer une notification à Slack. Ajoutez ce code à votre action :
Avant d’exécuter cette Action dans votre tenant avec du trafic réel, testez-la pour vous assurer qu’elle fonctionne comme prévu.
Sélectionnez l’icône Test (triangle) dans la barre latérale. Dans la section Payload, vous verrez des données JSON modifiables associées au déclencheur que vous avez sélectionné lors de la création de l’Action.
Sélectionnez le bouton Run et vous devriez voir un message apparaître dans votre canal Slack.
Maintenant que nous avons confirmé que l’Action fonctionne comme prévu, il est temps de la déployer.Sélectionnez Deploy. Le déploiement d’une Action prend un instantané de l’Action à ce moment précis et l’enregistre comme une version d’Action.Sélectionnez Version History; vous devriez y voir l’Action enregistrée comme version 1 :
Vous pouvez maintenant mettre à jour votre Action et l’enregistrer sans modifier la version 1 de votre Action. Auth0 n’exécute que la version actuellement déployée d’une Action. Ainsi, tant que vous ne déployez pas de nouveau l’action, c’est la version 1 qu’Auth0 exécutera.
Sélectionnez le Login flow et faites glisser my-slack-action dans le flow.
Sélectionnez Apply.
L’Action s’exécute maintenant sur du trafic utilisateur réel dans votre tenant. Si vous souhaitez un environnement de test plus robuste, envisagez de configurer plusieurs environnements Auth0.
Maintenant que votre Action s’exécute dans le cadre du Login flow, Auth0 consigne des renseignements sur chaque exécution d’Action dans les journaux du tenant. Pour les consulter, accédez à Auth0 Dashboard > Monitoring > Logs, puis sélectionnez un événement connexion réussie.Vous devriez voir une vue Détails de l’Action qui contient des renseignements sur toutes les Actions exécutées dans le cadre de ce flow.
Maintenant que vous avez créé votre première Action, consultez Découvrir les Flows et les Déclencheurs pour voir comment effectuer certaines tâches courantes avec Actions.