Skip to main content
Le 30 avr. 2022, Node.js v12 n’était plus couvert par le soutien à long terme (LTS), ce qui signifie que l’équipe de développement de Node.js ne rétroporte plus les correctifs de sécurité critiques vers cette version. Cela pourrait exposer votre code d’extensibilité à des vulnérabilités de sécurité. Par conséquent, Auth0 migre de Node 12 à Node 16.

Recommandations

Bien que la mise à niveau vers Node 16 n’introduise aucun changement incompatible dans la bibliothèque standard de Node.js (les Rules et les Custom Database Action Scripts sont touchés; consultez la section Changements incompatibles — Rules et Custom Database Action Scripts uniquement), nous encourageons les clients qui utilisent Node 12 à demeurer à jour en utilisant les versions actives de Node de soutien à long terme (LTS), pour des raisons de sécurité et de conformité. Les clients qui utilisent encore Node 8 ne sont plus conformes aux exigences de sécurité et doivent migrer vers Node 16 afin d’éliminer les risques de sécurité. Nous avons retiré le runtime Node 8 le 22 févr. 2022 pour les tenants Public Cloud, puis dans la version d’avril 2022 de Private Cloud. Après ces dates, les tenants encore configurés pour Node 8 risquent une interruption de service. Actions est conçu pour prendre en charge simultanément plusieurs versions de Node et prend actuellement en charge Node 12 et Node 16. De plus, les Actions Integrations sans code suivront une approche de contrôle de version « toujours à jour » conforme aux normes de l’industrie, les versions mineures étant mises à jour automatiquement; le code sous-jacent demeurera toujours à jour et utilisera la plus récente version de Node.js.

Tâches

Mettre à niveau les Actions

Les Actions existantes basées sur Node 12 peuvent être mises à niveau vers Node 16, puis rétablies à une version antérieure sous Node 12 au besoin. Pour mettre à niveau les Actions vers Node 16, créez et déployez une nouvelle version configurée pour utiliser Node 16 comme runtime.

Migrer les Rules et les Hooks vers Actions

Dans la mesure du possible, migrez les Rules et les Hooks vers Actions. Pour déterminer quelles Rules et quels Hooks peuvent être migrés, consultez Limitations des Actions. Pour savoir comment migrer vos Rules et vos Hooks vers Actions, consultez nos guides offerts à Migrer vers Actions.

Activer le runtime Node 16

Si vous utilisez des produits d’Extensibility Legacy, comme Rules, Hooks ou Extensions, vous devez activer le runtime Node 16 au niveau du tenant. Nous vous recommandons de commencer par faire passer votre tenant de développement au runtime Node 16, de tester votre configuration, puis de faire de même pour votre tenant de production.
  1. Activez Node 16 sur votre tenant de développement à l’aide du panneau Extensibility de la page Paramètres avancés du tenant du Dashboard. Choisissez Node 16 dans la liste déroulante Runtime.
  2. Cliquez sur Save.
  3. Vérifiez que vous n’avez aucun des éléments ci-dessous, ou que vous avez effectué les étapes de migration pour chacun d’eux.
  4. Testez votre configuration. Une fois les tests terminés, répétez les étapes 1 et 2 ci-dessus avec votre tenant de production pour activer Node 16 en production.

Changements incompatibles — Rules et Custom Database Action Scripts uniquement

Les Rules s’exécutent dans un environnement sandbox JavaScript. Le sandbox prend en charge ECMAScript 6 ainsi qu’un grand nombre de modules Node.js (version 16+). Si vous utilisez l’une de ces propriétés globales dans des Rules ou des Custom Database Action Scripts, cherchez une solution de rechange dans notre liste des modules sandbox pris en charge et incluez-la explicitement avec require.
  • _
  • async
  • Auth0
  • azure_storage
  • bcrypt
  • crypto
  • couchbase
  • cql
  • ip
  • jwt
  • Knex
  • mongo
  • mysql
  • mysql_pool
  • ObjectID
  • pbkdf2
  • pg
  • postgres
  • Pubnub
  • q
  • querystring
  • request
  • sqlserver
  • uuid
  • xml2js
  • xmldom
  • xpath
  • xtend