Passer au contenu principal
Vous utilisez généralement une connexion de base de données personnalisée pour donner accès à votre propre magasin d’identités hérité à des fins d’authentification (parfois appelée authentification héritée) ou pour effectuer l’importation d’utilisateurs au moyen de la migration automatique (souvent appelée migration trickle ou lazy). Vous pouvez aussi utiliser des connexions de base de données personnalisées pour servir d’intermédiaire vers un locataire Auth0 dans les scénarios où vous utilisez une architecture Auth0 multilocataire. Pour en savoir plus, consultez Pratiques exemplaires pour les applications multilocataires. Vous créez et configurez généralement des connexions de base de données personnalisées à l’aide du . Vous créez une connexion de base de données, puis activez Use my own database pour permettre la modification des scripts d’action de la base de données. Une connexion de base de données personnalisée peut aussi être créée et configurée au moyen du d’Auth0, du point de terminaison Create a connection endpoint et de la stratégie auth0.
Auth0 Dashboard Authentification Base de données Connexion Base de données personnalisée Paramètres Utiliser ma propre base de données Activé
Comme illustré ci-dessous, vous utilisez des connexions de base de données personnalisées dans le cadre d’un flux de connexion afin d’obtenir les renseignements d’identité de l’utilisateur à partir de votre propre magasin d’identités hérité pour l’authentification ou l’importation d’utilisateurs.
Flux de connexion de base de données personnalisée
En plus des éléments communs à tous les types de connexions de base de données, une connexion de base de données personnalisée vous permet de configurer des scripts d’action, c’est-à-dire du code personnalisé utilisé pour interagir avec des magasins d’identités hérités. Les scripts que vous choisissez de configurer dépendent du fait que vous créez une connexion pour l’authentification héritée ou pour la migration automatique. Les scripts d’action peuvent être implémentés sous forme de fonctions anonymes; toutefois, les fonctions anonymes rendent le débogage difficile lorsqu’il faut interpréter la pile d’appels générée à la suite d’erreurs exceptionnelles. Pour plus de commodité, nous vous recommandons de donner un nom de fonction à chaque script d’action. Pour voir quelques noms recommandés, consultez Pratiques exemplaires d’exécution des scripts d’action de base de données personnalisée. Dans un scénario d’authentification héritée, aucun nouvel enregistrement d’utilisateur n’est créé; l’utilisateur demeure dans le magasin d’identités hérité et Auth0 utilise l’identité qu’il contient lors de l’authentification de l’utilisateur. Les connexions de base de données personnalisées sont aussi utilisées en dehors du flux . Par exemple, le script d’action changePassword d’une connexion est appelé lorsqu’une opération de changement de mot de passe est effectuée pour un utilisateur qui se trouve dans un magasin d’identités hérité.

Migration automatique

Lors d’une migration automatique, Auth0 crée un nouvel utilisateur dans un magasin d’identités (base de données) géré par Auth0. Auth0 utilise l’identité stockée dans ce magasin d’identités géré par Auth0 pour authentifier l’utilisateur. Pour que cela se produise, Auth0 exige d’abord que l’utilisateur soit authentifié auprès du magasin d’identités hérité; ce n’est que si cette authentification réussit que le nouvel utilisateur est créé dans la base de données gérée par Auth0. Auth0 crée ce nouvel utilisateur à l’aide du même id et du même mot de passe que ceux fournis lors de l’authentification. Dans un scénario de migration automatique, la création de l’utilisateur se produit généralement une fois le script d’action Login terminé. Nous vous recommandons de ne pas tenter de supprimer des utilisateurs du magasin d’identités hérité au moyen d’une opération inline dans le script Login, mais plutôt dans le cadre d’un processus distinct. Cela permet d’éviter la suppression accidentelle d’utilisateurs si une erreur survient pendant la migration. Avec la migration automatique, les utilisateurs demeurent dans le magasin d’identités hérité et peuvent être supprimés ou archivés au besoin. Un effet secondaire peut se produire lorsqu’un utilisateur est supprimé d’Auth0, mais demeure dans l’ancien magasin de données. Dans ce cas, une connexion effectuée par l’utilisateur supprimé pourrait entraîner l’exécution du script Login ou Get User, et l’utilisateur serait de nouveau migré depuis le magasin d’identités hérité. Nous recommandons de marquer les identités des utilisateurs du magasin hérité comme migrées avant la fin des scripts Login ou Get User, et avant toute suppression éventuelle dans le magasin hérité, afin d’empêcher la recréation involontaire d’utilisateurs supprimés intentionnellement.

Taille

Nous recommandons que la taille totale d’un script d’action ne dépasse pas 100 Ko. Plus cette taille est grande, plus le processus d’empaquetage et de transport utilisé par la plateforme Auth0 introduit de la latence, ce qui aura une incidence sur les performances de votre système. Notez que la limite de 100 Ko n’inclut aucun module npm référencé dans une instruction require.

En savoir plus