Aprenda a escribir una Action, lo que incluye elegir un flujo, crear y configurar una Action, y vincularla al flujo.
Esta guía le mostrará cómo crear e implementar su primera Action mediante el . Al finalizar, comprenderá la funcionalidad básica que usará con todas las Actions y estará familiarizado con el modelo de programación. Lo que aprenderá constituye la base para escribir cualquier Action, independientemente de su propósito o del flujo.
El objetivo: notificar a Slack cuando un usuario inicia sesión
Va a crear una Action que envía un mensaje a un canal de Slack cuando un usuario inicia sesión. Aunque este tutorial usará el trigger Post Login, la información que se proporciona aquí es útil para triggers de cualquier tipo.Para completar esta tarea, hará lo siguiente:
La galería de plantillas de Actions ofrece varias plantillas iniciales para ayudarle a crear una Action. Para crear una Action a partir de una plantilla:
Cada Action puede contener valores Secret, adecuados para almacenar información confidencial, como y claves de API. Almacene la URL del webhook de Slack como un Secret.
Seleccione el icono de llave en la barra lateral izquierda del editor de código.
Seleccione Add Secret.
Asigne al Secret el siguiente nombre: SLACK_WEBHOOK_URL.
Pegue la URL del webhook proporcionada por Slack y seleccione Create.
Verá que el Secret se agregó a la Action y que puede usar el nuevo Secret mediante el autocompletado inteligente escribiendo event.secrets.
Una vez creado un Secret, su valor nunca volverá a mostrarse. Auth0 cifra todos los Secrets y los almacena de forma segura.
Usarás el paquete de npm@slack/webhook para facilitar el envío de mensajes a Slack. Puedes usar casi cualquier paquete público de npm en una Action, siempre que pueda instalarse sin depender de complementos nativos.Para agregar la dependencia:
Selecciona el icono Dependency (icono de cubo) en la barra lateral.
En Nombre, ingresa @slack/webhook.De forma predeterminada, tu Action usará la versión más reciente de la dependencia disponible en el momento en que se agregó.
Selecciona Create y la dependencia debería agregarse a la Action:
Cuando guardes esta Action, se resolverá la versión más reciente de la dependencia y se reemplazará por un número de versión específico para evitar que futuras actualizaciones del paquete afecten a tu Action.
Selecciona Guardar borrador. Tu Action se guarda, pero todavía no se ejecutará como parte de ningún flujo de usuario. Con Actions, puedes crear, editar y probar Actions antes de que afecten al tráfico de tu inquilino de Auth0. Cuando estés conforme con el comportamiento de la Action, la implementarás y la agregarás a un flujo más adelante.
Ahora que la Action ya se configuró con un Secret y una dependencia, ¡escribamos el código!Cada Action tiene un objeto event que contiene información contextual de solo lectura relevante para el trigger asociado. Si empiezas a escribir event. en el Editor, verás todas las propiedades disponibles del evento. Para obtener más información sobre qué datos están disponibles en cada trigger, consulta Explorar flujos y triggers.Usemos nuestra Action para notificar a Slack. Agrega este código a tu Action:
Antes de ejecutar esta Action en tu inquilino con tráfico real de usuarios, pruébala para comprobar que funciona como se espera.
Selecciona el icono de Test (triángulo) en la barra lateral. En la sección Payload, verás datos JSON editables correspondientes al trigger que seleccionaste cuando creaste la Action.
Selecciona el botón Run y deberías ver un mensaje en tu canal de Slack.
Ahora que hemos comprobado que la Action funciona como se espera, es hora de desplegarla.Selecciona Deploy. Al desplegar una Action, se toma una instantánea de la Action en ese momento y se registra como una versión de Action.Selecciona Version History y deberías ver la Action registrada como Version 1:
Ahora puedes actualizar tu Action y guardarla sin afectar a la Version 1 de tu Action. Auth0 solo ejecutará la versión desplegada actualmente de una Action, por lo que, hasta que vuelvas a desplegar una Action, Auth0 ejecutará la Version 1.
La Action ya se está ejecutando con tráfico real de usuarios en tu inquilino. Si quieres un entorno de pruebas más sólido, considera configurar varios entornos de Auth0.
Observa las Actions en los registros del inquilino
Ahora que tu Action se ejecuta como parte del flujo de inicio de sesión, Auth0 registra información sobre cada ejecución de la Action en los registros del inquilino. Para verlo, ve a Auth0 Dashboard > Monitoring > Logs y selecciona un evento de Successful Login.Deberías ver una vista de Action Details que contiene información sobre cualquier Action que se haya ejecutado como parte de ese flujo.