Inscription personnalisée
Lorsque vous utilisez Lock ou l’API Auth0, vous pouvez personnaliser le formulaire d’inscription de l’utilisateur en ajoutant d’autres champs en plus du courriel et du mot de passe.
De nombreux facteurs sont à prendre en compte avant de choisir entre Lock et les interfaces utilisateur personnalisées. Par exemple, en utilisant Lock, vous pouvez rediriger vers une autre page pour capturer des données ou utiliser un profilage progressif. Lorsque vous utilisez l’API d’Auth0, vous pouvez capturer des champs personnalisés et les stocker dans une base de données. Il existe certaines limites à la personnalisation qui doivent être prises en compte lors du choix de la méthode la mieux adaptée à votre objectif. Parmi les personnalisations typiques, citons l’ajout d’un nom d’utilisateur et la vérification de la force du mot de passe.
Connexion universelle recommandée
Auth0 offre une option de Connexion universelle que vous pouvez utiliser plutôt que de concevoir vos propres pages de connexion ou d’inscription, ou d’utiliser celles qui sont intégrées dans les librairies Auth0. Si vous souhaitez offrir des options de connexion et d’inscription, et que vous devez seulement personnaliser le nom de l’application, le logo et la couleur d’arrière-plan, la Connexion universelle pourrait être une option plus facile à implémenter.
Utiliser Lock
Lock permet la création de champs personnalisés pour les inscriptions.
L’option additionalSignUpFields
de Lock ne fonctionnera qu’avec les inscriptions par base de données. Pour les inscriptions utilisant des fournisseurs d’identité sociale, la collecte de ces champs de la même manière n’est pas possible avec Lock, mais il existe deux autres options permettant d’autoriser les inscriptions de fournisseurs d’identité sociale avec Lock tout en continuant à collecter des champs personnalisés supplémentaires.
Rediriger vers une autre page
Une façon d’utiliser les inscriptions de fournisseurs sociaux avec Lock, et de collecter des données personnalisés consiste à utiliser des règles de redirection pour conduire l’utilisateur vers une autre page où vous lui demanderez des informations supplémentaires, puis à le renvoyer pour terminer la transaction d’authentification.
Profilage progressif
Une autre façon de collecter des données personnalisées lors de l’inscription d’utilisateurs auprès de fournisseurs sociaux est le profilage progressif, qui permet d’établir progressivement des données sur le profil utilisateur au fil du temps. Vous recueillez le strict minimum de détails lors de l’inscription, mais lorsqu’un utilisateur interagit ensuite avec votre application, vous recueillez une petite quantité de données (peut-être une question) à chaque fois jusqu’à ce que son profil soit complet. Cela vous permet de collecter les informations souhaitées, mais avec moins de friction puisque l’objectif de l’utilisation d’un fournisseur d’identité social pour l’inscription est de rendre le processus plus facile et plus rationnel pour l’utilisateur.
Utiliser l’API
Créer un formulaire d’inscription pour capturer les champs personnalisés
Le name
est un attribut du profil utilisateur et la color
est un champ personnalisé.
Il n’existe actuellement aucun moyen de valider les champs personnalisés fournis par l’utilisateur lors de l’inscription. La validation doit être effectuée à partir d’une règle Auth0 lors de la connexion, ou à l’aide d’une logique personnalisée côté serveur dans votre application.
Envoyer les données du formulaire
Envoyez une requête POST au point de terminaison /dbconnections/signup dans Auth0.
Vous devez envoyer :
Le
client_id
de votre application.Le
email
etpassword
de l’utilisateur en cours d’inscription.Le nom de la
connection
à la base de données pour stocker les données de l’utilisateur.Tout attribut de profil utilisateur que vous souhaitez mettre à jour pour l’utilisateur, ce qui peut inclure
given_name
,family_name
,name
,nickname
, etpicture
.Tous les champs personnalisés faisant partie des
user_metadata
.
Limitations des champs personnalisés
Lorsque vos utilisateurs s’inscrivent, les champs personnalisés sont envoyés en tant que partie des user_metadata
. Les limites de ce champ sont :
user_metadata
ne doivent pas contenir plus de 10 champsuser_metadata.field
doit être une chaîneuser_metadata.field.value.length
doit comporter moins de 500 caractèresuser_metadata.field.length
doit comporter moins de 100 caractèresLa limite de taille actuelle des
user_metadata
est de 16 Mo
Mode de redirection
Après une connexion réussie, Auth0 redirigera l’utilisateur vers l’URL de rappel configurée avec un JWT (id_token
) dans la chaîne de requête.
Votre serveur devra alors appeler l’APIv2 pour ajouter les champs personnalisés nécessaires au profil de l’utilisateur.
Ajouter le nom d’utilisateur au formulaire d’inscription
Une personnalisation courante de l’inscription consiste à ajouter un nom d’utilisateur à l’inscription.
Pour activer cette fonctionnalité, activez le paramètre Exiger un nom d’utilisateur dans la section Connexions > Base de données du tableau de bord, sous l’onglet Paramètres, pour la connexion que vous souhaitez modifier.
Capturez le champ username
dans votre formulaire personnalisé et ajoutez le username
au corps de la requête.
Optionnel : Vérifier la robustesse du mot de passe
Les règles relatives aux mots de passe pour les connexions aux bases de données peuvent être configurées dans le Tableau de bord. Pour plus d’informations, consultez : Force du mot de passe dans les connexions à la base de données Auth0.
Si la mise en œuvre de formulaires d’inscription personnalisés l’exige, il est possible de récupérer les politiques de mots de passe et autres informations sur la connexion à partir de Management API v2. Le résultat peut être analysé côté client et contiendra des informations sur la ou les politiques de mot de passe actuellement configurées dans le tableau de bord pour cette connexion