Saltar al contenido principal

Primeros pasos

Use la guía de inicio rápido para escribir un módulo de Action y usarlo desde una Action para enviar registros a un servicio externo.
1

Crear un módulo para una Action

Para usar un módulo de Action en una Action específica, primero debes crear el módulo de Action y luego agregarlo o usarlo en una Action.
  1. Ve a Auth0 Dashboard > Actions > Library y luego selecciona Modules.
  2. Selecciona Create Module.
  3. Introduce un Name.
  4. Selecciona Create.
Auth0 muestra el editor de código
Módulos de Actions: nuevo módulo de Action
2

Agregar un secreto

Cada Action Module puede contener pares clave/valor de secretos. Úsalos para almacenar información confidencial, como claves de API, certificados y valores que pueden variar entre entornos.
Almacenemos la URL del servicio externo como un Secret.
  1. Selecciona el ícono en la barra lateral izquierda del editor de código.
  2. Selecciona Add Secret.
  3. Introduce SERVICE_URL como nombre.
  4. Introduce la URL del servicio externo en el campo Value.
  5. Selecciona Create.
Módulos de Actions: Secret agregado
Auth0 agrega el Secret a la lista de Secrets del Action Module.
Paso adicional: Repite los pasos para almacenar un API_KEY como Secret que enviarás en los encabezados al servicio externo con cada solicitud.
Una vez que creas un Secret, Auth0 nunca vuelve a mostrar su valor. Auth0 cifra todos los Secrets y los almacena de forma segura.
Cada Action Module Secret es independiente de los Actions Modules y Actions Secrets.
Usa Secrets en el Action Module escribiendo actions.secrets.[secret_key].
3

Añadir lógica personalizada

Ahora, añada el siguiente código a su módulo de Action.
Añada el siguiente código a su módulo de Action:
module.exports = {
  sendLog: async (code, message) => {
    try {
      await fetch(actions.secrets.SERVICE_URL, {
        method: 'POST',
        headers: {
          'X-API-Key': actions.secrets.API_KEY,
        },
        body: JSON.stringify({
          code,
          message
        }),
      });

      console.log({
        code,
        message
      });
    } catch (err) {
      throw new Error('External service failure');
    }

    return;
  }
};
4

Guardar el borrador

Puedes guardar un borrador de tu módulo de Action.
  1. Selecciona Save Draft.
Módulos de Actions: borrador guardado
Esto guarda el módulo de Action como borrador sin publicar una nueva versión, por lo que no afecta a las Actions que lo usan.
5

Publica el módulo de Action

Una vez que estés conforme con el código del Action Module, es momento de publicarlo.
  1. Selecciona Publicar.
Al publicar un Action Module, se crea una instantánea de ese momento y se registra como una versión del Action Module.
  1. Selecciona Ver historial de versiones.
Módulos de Actions - Historial de versiones
Auth0 muestra la lista de versiones del Action Module, incluido el borrador.
Ahora puedes empezar a usar el Action Module en una Action.
Cada Action debe hacer referencia explícitamente a la versión del Action Module, lo que evita actualizaciones automáticas que podrían introducir errores inesperados.
6

Agregar el módulo de Action en una Action

Agreguemos el módulo de Action en una Action.
  1. Vaya a Auth0 Dashboard > Actions > Library y, a continuación, seleccione una Action específica.
  2. Una vez en el editor de Action, selecciona el ícono en la barra lateral izquierda.
  3. Seleccione Add Module.
  4. Seleccione el nombre y la versión del módulo.
  5. Selecciona Agregar.
Actions - Agregar módulo de Action
7

Usa el módulo de Action en Action

Ahora, usemos el Action Module en la Action.
  1. Agrega la instrucción require.
const logger = require('actions:logger');
La instrucción require hace referencia al Action Module con el formato actions:[module-name].
  1. Agrega la llamada a logger.sendLog en la función Action, donde quieras enviar registros.
await logger.sendLog('logger_success', 'Your Action was able to use the Logger Action Module');
  1. Selecciona Deploy para la Action.
Actions - Use Action Module
Recuerda vincular la Action a un Trigger.
Punto de controlAhora debería tener un módulo de Action completamente funcional que ya utiliza una Action.

Uso avanzado

Cada módulo de Action puede agregar y usar dependencias de NPM.
  1. Selecciona el icono de la barra lateral izquierda del editor de código.
  2. Selecciona Agregar dependencia.
  3. Introduce el nombre del paquete NPM.
  4. Introduce la versión del paquete NPM.
  5. Selecciona Crear.
Módulos de Actions: dependencia agregada
Auth0 agrega la dependencia a la lista de dependencias del módulo de Action.
Usa las dependencias de la lista en el módulo de Action importándolas con require('[package-name]').
Cuando guardas esta Action, Auth0 resuelve la versión más reciente de tu dependencia y la sustituye por un número de versión específico para evitar que futuras actualizaciones del paquete hagan que tu Action deje de funcionar.Puedes indicar una versión específica en lugar de la más reciente.