Passer au contenu principal
La date de fin de vie (EOL) des Règles et des Appels sera le 18 novembre 2026. Ils ne sont plus disponibles pour les nouveaux locataires créés à partir du 16 octobre 2023. Les locataires actuels ayant des hooks actifs conserveront l’accès aux produit Hooks jusqu’à la fin de leur durée de vie.Nous vous conseillons vivement d’utiliser les Actions pour étendre Auth0. Avec les Actions, vous avez accès à des informations de type enrichies, à une documentation intégrée et à des packages npm publics, et vous pouvez connecter des intégrations externes qui optimisent votre expérience d’extensibilité globale. Pour en savoir plus sur ce que les Actions proposent, consultez Comprendre comment fonctionnent Auth0 Actions.Pour vous aider dans votre migration, nous proposons des guides qui vous aideront à migrer des Règles vers les Actions et à migrer des Hooks vers les Actions. Nous avons également une page dédiée à la Migration vers les Actions qui met en évidence les comparaisons de fonctionnalités, une démo des Actions et d’autres ressources pour vous aider dans votre parcours de migration.Pour en savoir plus sur l’obsolescence des Règles et des Appels, consultez notre article de blog : Preparing for Rules and Hooks End of Life (Préparation à la fin de vie des règles et des crochets).
Avec des règles, vous pouvez gérer des cas plus compliqués qu’avec les connexions sans mot de passe. Par exemple, vous pouvez ajouter des précautions supplémentaires pour assurer la possession d’une adresse courriel ou d’un appareil.

Exiger l’authentification multifacteur (MFA) pour les utilisateurs qui sont à l’extérieur du réseau de l’entreprise

Supposons que vous vouliez exiger une authentification multifacteur (MFA) pour tous les utilisateurs qui accèdent à l’application en utilisant une connexion sans mot de passe depuis l’extérieur de votre réseau d’entreprise. En utilisant une règle, vous pouvez vérifier si un utilisateur s’authentifie à l’aide d’une méthode sans mot de passe (sms, email) et si son IP de session se trouve en dehors du réseau d’entreprise désigné, lui demander un deuxième facteur d’authentification.
Vous pouvez également déclencher cette règle en fonction d’autres critères, par exemple si l’adresse IP actuelle correspond à la liste d’adresses IP autorisées de l’utilisateur ou si la géolocalisation de l’utilisateur révèle qu’il se trouve dans un pays différent de celui indiqué dans son profil utilisateur.
Pour ce faire, vous devez créer la règle suivante :
function(user, context, callback) {
  const ipaddr = require('ipaddr.js');
  const corp_network = "192.168.1.134/26";
  const current_ip = ipaddr.parse(context.request.ip);
  // is auth method passwordless and IP outside corp network?
  const passwordlessOutside = context.authentication.methods.find(
    (method) => (
      ((method.name === 'sms') || (method.name === 'email')) && 
      (!current_ip.match(ipaddr.parseCIDR(corp_network)))
    )
  );

  // if yes, then require MFA
  if (passwordlessOutside) {
    context.multifactor = {
      provider: 'any',
      allowRememberBrowser: false
    };
  }
  callback(null, user, context);
}
I