create.
Ce script est facultatif. S’il est activé, lorsqu’un utilisateur s’inscrit au moyen de ou est créé au moyen du ou de l’Auth0 , Auth0 exécute le script pour créer l’enregistrement utilisateur correspondant dans la base de données externe.
Lorsqu’un utilisateur est créé dans Auth0, Auth0 appelle une série de scripts :
- Get User : vérifie que l’utilisateur n’existe pas déjà dans Auth0 ou dans la base de données externe.
- Create : crée l’utilisateur dans la base de données externe.
- Login : vérifie que l’utilisateur a bien été créé.
Fonction Create
La fonctioncreate doit :
- Envoyer les données de profil de l’utilisateur à l’API de la base de données externe.
- Renvoyer une erreur si l’opération de création de l’utilisateur a échoué.
Définition
La fonctioncreate accepte deux paramètres et renvoie une fonction de rappel callback :
Voici un pseudo-exemple en JavaScript montrant comment vous pourriez implémenter la fonction
create :
Chiffrement
Hachez la valeur du mot de passe à l’aide d’une bibliothèque de hachage cryptographique commebcrypt afin d’éviter toute fuite de données potentielle. Évitez de consigner, de stocker ou de transmettre le mot de passe sous une forme non chiffrée.
Par exemple :
Fonction de rappel
La fonctioncallback prend un paramètre et retourne une fonction.
Définition
Objet de type ValidationError
L’objet de type d’erreur personnaliséValidationError vous permet de transmettre des données qui seront affichées dans vos journaux du tenant.
Le constructeur ValidationError accepte jusqu’à deux paramètres :
Renvoyer une réussite
Si la création de l’utilisateur a réussi, appelez la fonction de rappelcallback et transmettez la valeur null au paramètre error :
Renvoyer une erreur
Si une erreur survient, appelez la fonction de rappel et transmettez-lui les renseignements pertinents sur l’erreur dans le paramètreerror.
Par exemple, vous pouvez renvoyer une erreur avec la valeur user_exists pour le paramètre errorCode :
fs du tenant.
Paramètre de l’objet user
Le paramètre d’objet user contient un ensemble prédéfini de propriétés issues du processus de création de l’utilisateur :
Propriété username
Si le paramètre Requires Username est activé pour votre connexion de base de données personnalisée, les scripts Login et Get User doivent prendre en charge la propriété username ; vous devriez donc l’enregistrer dans votre base de données externe.
Métadonnées utilisateur et d’application
Les propriétésuser_metadata et app_metadata n’ont pas besoin d’être stockées dans votre base de données externe. Auth0 stocke automatiquement ces valeurs dans l’enregistrement de profil utilisateur créé en interne.
Champs personnalisés d’inscription
Si vous créez et utilisez des champs personnalisés lors de l’inscription, ils seront inclus dans l’objetuser. Par exemple :
Exemples de scripts par langage
Auth0 fournit des exemples de scripts pour les langages/technologies suivants :Résolution des problèmes
Si vous ne parvenez pas à créer un utilisateur dans votre référentiel d’utilisateurs externe ou dans Auth0 :- Vérifiez les instructions
console.log()dans les journaux en temps réel d’Actions. - Repérez l’utilisateur dans votre ancienne base de données et supprimez-le au besoin. Si l’état partiel de l’utilisateur se trouve dans Auth0, utilisez le point de terminaison Supprimer un utilisateur ou le point de terminaison Supprimer un utilisateur d’une connexion de la Management API.
- Assurez-vous que le mode d’importation est désactivé, puis configurez le script Create.