Skip to main content
Le @auth0/actions package npm est la bibliothèque officielle pour Actions qui comprend les définitions TypeScript d’Auth0 Actions. Vous pouvez ainsi coder et tester les Actions de votre projet dans des éditeurs externes et des EDI.
Le @auth0/actions dépôt public donne accès au code source du package npm.

Avantages

Cette bibliothèque vous aide dans les cas d’usage suivants :
  • Assistance IDE / éditeur de code : En utilisant cette bibliothèque, les IDE et les éditeurs de code peuvent aider les développeurs grâce à l’autocomplétion, aux définitions d’objets et de fonctions et à la vérification des erreurs.
  • Développement TypeScript : Bien que les Actions soient encore codées et exécutées avec Node.js CommonJS, cette bibliothèque permet de développer des Actions dans des projets externes à l’aide de TypeScript, puis de les compiler et de les déployer en Common JS vers le tenant Auth0.
  • Amélioration des tests unitaires : En permettant le développement TypeScript dans des projets externes, cette bibliothèque permet aux développeurs de suivre les meilleures pratiques et d’améliorer leurs tests unitaires à partir des définitions TypeScript.
  • Génération d’Actions par l’IA : Cette bibliothèque nous rapproche un peu plus d’une IA capable de générer des exemples d’Action plus précis.

Comment ça fonctionne

Installation

Utilisez l’un des gestionnaires de paquets suivants pour installer le package comme dépendance de développement :
Le package doit être utilisé comme dépendance de développement pour compléter vos outils de développement.
  • NPM: npm install @auth0/actions --save-dev
  • Yarn: yarn add @auth0/actions --dev
  • Pnpm: pnpm add @auth0/actions --save-dev

Importation

La bibliothèque a la structure suivante :
L’instruction d’importation doit être basée sur chaque nom de déclencheur et numéro de version, en tenant compte de la structure précédente de la bibliothèque. Suivez le modèle : @auth0/actions/[trigger_name]/[trigger_version] Par exemple : @auth0/actions/post-login/v3 Utilisez l’une des options suivantes pour importer les définitions TypeScript dans vos Actions, selon votre technologie : Utilisez cette option si vous voulez IntelliSense sans modifier la structure actuelle de votre code JavaScript :
Utilisez cette option si vous voulez IntelliSense sans modifier la structure actuelle de votre code JavaScript :
Lorsque vous utilisez TypeScript, vous devez compiler votre code en JavaScript avant de le déployer sur Auth0. L’environnement d’exécution d’Auth0 Actions exécute uniquement du JavaScript. Utilisez le compilateur TypeScript (tsc) pour transpiler vos fichiers .ts en fichiers .js avant le déploiement. Vous devez également inclure des commentaires JSDoc pour activer IntelliSense dans le Dashboard.

Exemples

Les exemples d’Actions suivants sont présentés intentionnellement en JavaScript et en TypeScript afin de permettre une comparaison directe, côte à côte.

Configuration

Dans votre fichier package.json, indiquez les dépendances de développement nécessaires pour bénéficier de l’aide IntelliSense lorsque vous rédigez votre Action :

Contrôle d’accès Post-Login et claims personnalisés du jeton ID

L’Action d’exemple suivante s’exécute pendant le flux Post-Login. Elle vérifie si des rôles sont attribués à l’utilisateur et appelle api.access.deny() si aucun n’est trouvé. Si des rôles sont présents, elle définit ensuite le claim personnalisé dans le jeton ID. L’instruction d’importation déclare la disponibilité de types externes dans votre code. Cela permet à l’éditeur de connaître la structure des objets event et api.
Pour en savoir plus sur @auth0/actions, consultez : https://www.npmjs.com/package/@auth0/actions. Pour en savoir plus sur le code source de @auth0/actions, consultez le dépôt Auth0 Actions. Pour en savoir plus sur la création d’Actions, consultez Créer votre première Action.