La disponibilité varie selon le plan Auth0
Votre plan Auth0 ou votre accord personnalisé ont un impact sur la disponibilité de cette fonctionnalité. Pour en savoir plus, lisez Tarification.
Assurez-vous que votre base de données possède les champs appropriés pour stocker les attributs des profils utilisateurs, tels que
id
, nickname
, email
, and password
. Pour en savoir plus sur le schéma de profil utilisateur d’Auth0, consultez Profils utilisateurs normalisés. Pour en savoir plus sur la mise à jour des profils utilisateurs, consultez Mise à jour des profils utilisateurs à l’aide de votre base de données.- Fournisseur d’adhésion ASP.NET
- MongoDB
- MySQL
- PostgreSQL
- SQLServer
- Base de données SQL de Windows Azure
- Services Web accessibles via Auth de base
Pare-feu réseau
Si vous êtes derrière un pare-feu, cette fonctionnalité pourrait exiger que vous ajoutiez les adresses IP Auth0 appropriées à votre Liste blanche pour que cela fonctionne correctement.
Créer la connexion dans Auth0 Dashboard
- Allez à Auth0 Dashboard > Authentication > Database (Tableau de bord Auth0 > Authentification > Base de données) et sélectionnez Create DB Connection (Créer une connexion DB).
- Configurez les paramètres de la connexion et cliquez sur Create (Créer):
Paramètre | Définition |
---|---|
Nom | Le nom de la connexion. Le nom doit commencer et se terminer par un caractère alphanumérique, contenir uniquement des caractères alphanumériques et des tirets et ne pas dépasser 35 caractères. |
Nom d’utilisateur obligatoire | Oblige les utilisateurs à fournir un nom d’utilisateur et une adresse courriel lors de l’inscription. |
Longueur du nom d’utilisateur | Définit une longueur minimale et maximale pour les noms d’utilisateur. |
Désactiver les inscriptions | Empêche les inscriptions pour votre application. Vous pourrez toujours créer des utilisateurs avec vos identifiants API ou via le Auth0 Dashboard. |
- Attributs
- Méthodes d’authentification
- Base de données personnalisée
- Applications
-
Sélectionnez l’aperçu Custom Database (Base de données personnalisée), puis faites glisser le bouton Use my own database (Utiliser ma propre base de données).
Créer les scripts d’action de la base de données.
L’activation du bouton bascule Use my own database (Utiliser ma propre base de données) active les scripts d’action de la base de données dans laquelle vous allez créer des scripts afin de configurer le mode d’authentification lors de l’utilisation de votre base de données. Vous pouvez écrire vos scripts d’action de base de données, ou vous pouvez sélectionner un modèle dans la liste déroulante des Templates (Modèles) et le modifier, si nécessaire. Vous must (devez) configurer un script delogin
. Les scripts additionnels pour les fonctionnalités utilisateur sont facultatifs.
Les scripts d’action de base de données incluent :
Nom | Description | Paramètres |
---|---|---|
Connexion Requis | S’exécute chaque fois qu’un utilisateur tente de se connecter. | email , password |
Créer | S’exécute lorsqu’un utilisateur s’inscrit. | user |
Vérifier | S’exécute lorsqu’un utilisateur a suivi le lien de vérification. | email |
Changer le mot de passe | S’exécute lorsqu’un utilisateur clique sur le lien de confirmation après une demande de réinitialisation du mot de passe. | email , newPassword |
Obtenir l’utilisateur | Récupère un profil utilisateur de votre base de données sans authentifier l’utilisateur. | email |
Supprimer | S’exécute lorsqu’un utilisateur est supprimé à l’aide de l’API ou de Auth0 Dashboard. | id |
Créer un script de connexion
Éviter les collisions d’ID utilisateur avec de multiples bases de données
La propriété
id
(ou user_id
) dans le profil utilisateur retourné sera utilisée par Auth0 pour identifier l’utilisateur.Si vous utilisez plusieurs connexions de base de données personnalisées, la valeur id
doit être unique dans toutes les connexions de bases de données personnalisées pour éviter les collisions d’ID utilisateurs. Notre recommandation est d’ajouter le nom de la connexion (sans espace) en préfixe à la valeur de id
. Pour en savoir plus à propos des ID utilisateurs, lisez Identifier les utilisateurs.- Après avoir fait glisser le bouton bascule Use my own database (Utiliser ma propre base de données), la zone Database Action Scripts (Scripts d’action de base de données) s’active. Assurez-vous que vous êtes sur l’onglet Login (Connexion).
-
Utilisez le menu déroulant de Modèles pour sélectionner le modèle de script de base de données MySQL.
Le script ci-dessus se connecte à une base de donnéesºMySQL et exécute une requête pour récupérer le premier utilisateur avec
email == user.email
. Avec la méthodebcrypt.compareSync
, il vérifie ensuite si les mots de passe correspondent, puis, si c’est le cas, il renvoie un objet contenant les informations du profil utilisateur, y compris l’id
, lenickname
et l’email
. Ce script suppose que vous avez une tableauusers
contenant ces colonnes. L’id
retourné par le script de connexion est utilisé pour construire l’attribut identifiant utilisateur du profil utilisateur. - Cliquez sur Save and Try (Enregistrer et essayer).
-
Dans la fenêtre modale, saisissez votre adresse courriel et votre mot de passe, puis cliquez sur Try (Essayer). Cette fonctionnalité propose un menu déroulant pour choisir parmi une liste de temps d’exécution possibles, avec votre temps d’exécution actuel en tête de liste.
Soutien aux organizations en matière de bases de données personnalisées
Si vous utilisez des connexions par base de données personnalisée en conjonction avec Organizations, vous pouvez utiliser le paramètrecontext
dans la signature du script pour rendre les détails de l’organization tels que l’id
, name
et metadata
disponibles pour vos scripts d’action de base de données personnalisée. Les données de l’organization sont envoyées dans l’objet contexte lorsque l’action correspondante se produit dans le contexte de l’organization. Par exemple, lorsqu’un utilisateur s’authentifie à l’invite de connexion d’une organization, le script d’action de connexion est transmis. Pour en savoir plus, consultez Connexions à la base de données.
Activer l’objet contexte
- Rendez-vous à Auth0 Dashboard > Authentification > Base de données.
- Sélectionnez votre connexion de base de données.
-
Sous l’onglet Custom Database (Base de données personnalisée), recherchez les Context objects in database scripts (Objet de contexte dans les scripts de base de données) et sélectionnez Enable (Activer).
Cette fonctionnalité ne peut pas être désactivée une fois qu’elle a été activée.
Utiliser le contexte d’Organization
Une fois que vous avez activé l’objet de contexte sur le Dashboard, vous pouvez ajouter un objetcontext
à vos scripts d’action de base de données personnalisée, qui seront insérés juste avant le paramètre de rappel. Lorsque des événements sont déclenchés avec le contexte d’Organization, les données correspondantes sont fournies à vos scripts d’action de base de données personnalisée dans le format suivant :
- Connexion
- Créer
- Vérifier
- Modifier le mot de passe
- Obtenir l’utilisateur
- Supprimer
Un contexte vide sera toujours transmis au script de
delete
.Ajouter des paramètres de configuration
Vous pouvez stocker des paramètres, tels que les identifiants client requis pour se connecter à votre base de données, dans la section Settings (Paramètres) sous l’éditeur de script. Ces paramètres seront accessibles pour tous vos scripts et vous pourrez y accéder en utilisant l’objetconfiguration
dans les scripts d’action de votre base de données (p. ex., configuration.MYSQL_PASSWORD
).
Utilisez les paramètres ajoutés dans vos scripts pour configurer la connexion. Vous pouvez par exemple ajouter ce qui suit au script de connexion MySQL :