Passer au contenu principal

Pour commencer

Utilisez le guide de démarrage rapide pour créer un module Action et l’utiliser dans une Action afin d’envoyer des logs vers un service externe.
1

Créer un module d’Action

Pour utiliser un module d’Action dans une Action donnée, vous devez d’abord créer le module d’Action, puis l’ajouter à l’Action et l’y utiliser.
  1. Accédez à Auth0 Dashboard > Actions > Library, puis sélectionnez Modules.
  2. Sélectionnez Create Module.
  3. Entrez un Name.
  4. Sélectionnez Create.
Auth0 affiche l’éditeur de code
Modules Actions - Nouveau module d’Action
2

Ajouter un secret

Chaque module d’Action peut contenir des paires clé-valeur secrètes. Utilisez-les pour stocker des renseignements sensibles, comme des clés API, des certificats et des valeurs qui peuvent varier d’un environnement à l’autre.
Stockez l’URL du service externe en tant que secret.
  1. Sélectionnez l’icône dans la barre latérale gauche de l’éditeur de code.
  2. Sélectionnez Add Secret.
  3. Dans le champ Name, saisissez SERVICE_URL.
  4. Dans le champ Value, saisissez l’URL du service externe.
  5. Sélectionnez Create.
Modules Actions - Secret ajouté
Auth0 ajoute le secret à la liste des secrets du module d’Action.
Étape supplémentaire : Répétez les étapes pour stocker un API_KEY en tant que secret, que vous enverrez dans les en-têtes au service externe avec chaque requête.
Une fois un secret créé, Auth0 n’en révèle jamais la valeur. Auth0 chiffre tous les secrets et les stocke de manière sécurisée.
Chaque secret de module d’Action est indépendant des autres modules d’Action et des secrets d’Action.
Utilisez les Secrets au niveau du module d’Action en saisissant actions.secrets.[secret_key].
3

Ajouter une logique personnalisée

Maintenant, ajoutez le code suivant à votre module Action.
Ajoutez le code suivant à votre module 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;
  }
};
Tenez compte des points suivants :
4

Enregistrer le brouillon

Vous pouvez enregistrer un brouillon de votre module Action.
  1. Sélectionnez Enregistrer comme brouillon.
Modules Actions - Brouillon enregistré
Votre module Action est ainsi enregistré sans publier de nouvelle version; les Actions qui l’utilisent ne sont donc pas touchées.
5

Publier le module Action

Une fois que vous êtes satisfait du code du module Action, il est temps de le publier.
  1. Sélectionnez Publier.
La publication d’un module Action en crée un instantané à ce stade et l’enregistre comme une version du module Action.
  1. Sélectionnez Afficher l’historique des versions.
Modules Action - Historique des versions
Auth0 affiche la liste des versions du module Action, y compris le brouillon.
Vous pouvez maintenant commencer à utiliser le module Action dans une Action.
Chaque Action doit faire explicitement référence à la version du module Action, ce qui empêche les mises à niveau automatiques susceptibles d’introduire des erreurs inattendues.
6

Ajoutez le module Action à une Action

Ajoutons le module Action dans une Action.
  1. Accédez à Auth0 Dashboard > Actions > Library, puis sélectionnez une Action en particulier.
  2. Une fois dans l’éditeur d’Action, sélectionnez l’icône dans la barre latérale de gauche.
  3. Sélectionnez Add Module.
  4. Sélectionnez le nom et la version d’un module.
  5. Sélectionnez Ajouter.
Actions - Ajouter un module Action
7

Utiliser le module Action dans l’Action

Maintenant, utilisons le module Action dans l’Action.
  1. Ajoutez l’instruction require.
const logger = require('actions:logger');
L’instruction require fait référence au module Action au format actions:[module-name].
  1. Ajoutez l’appel à logger.sendLog dans la fonction de l’Action, à l’endroit où vous souhaitez envoyer les journaux.
await logger.sendLog('logger_success', 'Your Action was able to use the Logger Action Module');
  1. Sélectionnez Deploy pour déployer l’Action.
Actions - Utiliser le module Action
N’oubliez pas d’associer l’Action à un déclencheur.
Point de contrôleVous devriez maintenant disposer d’un module Action entièrement fonctionnel utilisé par une Action.

Utilisation avancée

Chaque module Action peut ajouter et utiliser des dépendances NPM.
  1. Sélectionnez l’icône dans la barre latérale gauche de l’éditeur de code.
  2. Sélectionnez Ajouter une dépendance.
  3. Saisissez le nom du package NPM.
  4. Saisissez la version du package NPM.
  5. Sélectionnez Créer.
Modules Actions - Dépendance ajoutée
Auth0 ajoute la dépendance à la liste des dépendances du module Action.
Utilisez les dépendances répertoriées dans le module Action en les important à l’aide de require('[package-name]').
Lorsque vous enregistrez cette Action, Auth0 détermine la version la plus récente de votre dépendance et la remplace par un numéro de version précis afin d’éviter que de futures mises à jour du package ne brisent votre Action.Vous pouvez indiquer une version précise au lieu de la plus récente.