Structure du profil utilisateur

Le profil utilisateur normalisé d’Auth0 se compose de plusieurs éléments :

  • Détails : Objet Profil principal utilisateur, qui contient des informations de base, telles que le nom, l’adresse de courriel et l’heure de la dernière connexion de l’utilisateur, dans des attributs prédéfinis. Cet objet peut également contenir des informations sur la connexion source d’un utilisateur. La plupart des attributs utilisateur sont des attributs racine (attributs stockés au premier niveau, ou niveau racine, de l’objet user), et certains d’entre eux sont modifiables.

  • Metadata (Métadonnées) : Deux sous-objets qui servent de stockage secondaire pour stocker des informations supplémentaires sur l’utilisateur dans des attributs personnalisables : user_metadata et app_metadata. Pour en savoir plus, notamment quand utiliser app_metadata et user_metadata, consultez Comprendre le fonctionnement des métadonnées dans les profils utilisateurs.

Attributs du profil utilisateur

Les attributs suivants sont disponibles dans le profil utilisateur. Beaucoup sont des attributs racine (attributs stockés au premier niveau, ou niveau racine, de l’objet user) et certains peuvent être mis à jour, importés et exportés, comme indiqué ci-dessous.

Si certains champs utilisateur ne doivent pas être stockés par Auth0 pour des raisons de confidentialité, vous pouvez ajouter à la DenyList (Liste noire) ces attributs, que vous ne souhaitez pas voir persister dans les bases de données Auth0. Pour en savoir plus, consultez Add User Attributes to the DenyList (Ajouter des attributs d’utilisateur à la Liste noire).

Par défaut, les attributs du profil utilisateur fournis par des fournisseurs d’identité autres qu’Auth0 (tels que Google, Facebook ou X) ne sont pas directement modifiables, car ils sont mis à jour par le fournisseur d’identité à chaque fois que l’utilisateur se connecte.

Pour pouvoir modifier les attributs name, nickname, given_name, family_name ou les attributs racine de l’image sur le profil utilisateur normalisé, vous devez configurer votre synchronisation de connexion avec Auth0 de manière à ce que les attributs de l’utilisateur soient mis à jour à partir du fournisseur d’identité uniquement lors de la création du profil utilisateur. Ces attributs racine seront alors disponibles à l’édition individuelle ou par importation en grande quantité.

Nom Type Description Recherche? Mise à jour? Importation? Mise à jour pendant l’importation? Export?
app_metadata objet Champs personnalisés qui stockent des informations sur un utilisateur qui influencent l’accès de l’utilisateur, comme le plan d’assistance, les rôles de sécurité (si vous n’utilisez pas l’ensemble de fonctionnalités Authorization Core) ou les groupes de contrôle d’accès. Pour en savoir plus, veuillez consulter Présentation des métadonnées. O O O O O
blocked booléen Indique si l’utilisateur a été bloqué. L’importation permet aux abonnés de s’assurer que les utilisateurs restent bloqués lors de la migration vers Auth0. O O O N O
blocked_for tableau (objet) Adresses IP qui ont été bloquées en raison d’un soupçon d’attaque par force brute. N N N N N
created_at date heure Horodatage indiquant la date de création du profil utilisateur. O N N N O
email texte (unique) L’adresse courriel de l’utilisateur. O O O N O
email_verified booléen Indique si l’utilisateur a vérifié son adresse courriel. O O O O O
family_name texte Le nom de famille de l’utilisateur. O O O O O
given_name texte Le nom donné à l’utilisateur. O O O O O
guardian_authenticators array (object) Informations détaillées sur les méthodes d’autorisation de sauvegarde du tuteur que l’utilisateur a configurées, y compris les SMS et les codes de récupération. N N N N N
identities array (object)

Contient des informations récupérées auprès du fournisseur d’identité avec lequel l’utilisateur s’authentifie à l’origine. Les utilisateurs peuvent également lier leur profil à plusieurs fournisseurs d’identité; ces identités apparaîtront alors également dans ce tableau. Le contenu d’un objet de fournisseur d’identité individuel varie selon le fournisseur, mais il comprendra généralement les éléments suivants :

  • connection (texte) : nom de la connexion Auth0 utilisée pour authentifier l’utilisateur.
  • isSocial (booléen) : indique si la connexion est sociale.
  • provider (texte) : nom de l’entité qui authentifie l’utilisateur, comme Facebook, Google, SAML ou votre propre fournisseur.
  • user_id (texte) : identifiant unique de l’utilisateur pour cette connexion/ce fournisseur.
  • profileData (objet) : informations utilisateur associées à la connexion. Lorsque les profils sont liés, ils sont renseignés avec les informations utilisateur associées aux comptes secondaires.
dans certains cas, cela inclura également un jeton d’accès API à utiliser avec le fournisseur.
O N N N O
last_ip texte Adresse IP associée à la dernière connexion de l’utilisateur. O N N N O
last_login date heure Horodatage indiquant la dernière fois que l’utilisateur s’est connecté. Si un utilisateur est bloqué et se connecte, la session bloquée met à jour last_login. Si vous utilisez cette propriété depuis l’intérieur d’une Règle à l’aide de l’objet user<, sa valeur sera associée à la connexion qui a déclenché la règle; ceci est dû au fait que les règles s’exécutent après la connexion. O N N N O
last_password_reset date heure Horodatage indiquant la dernière fois que le mot de passe de l’utilisateur a été réinitialisé/modifié. Lors de la création de l’utilisateur, ce champ n’existe pas. Cette propriété n’est disponible que pour les connexions à la base de données. N N N N O
logins_count entier Nombre de fois que l’utilisateur s’est connecté. Si un utilisateur est bloqué et se connecte, la session bloquée est comptabilisée dans logins_count. O N N N O
multifactor tableau (chaîne) Liste des fournisseurs multifacteur auprès desquels l’utilisateur est inscrit. N N N N O
multifactor_last_modified date heure Date et heure de la dernière mise à jour de l’authentification multifacteur (MFA) d’un utilisateur. N N N N O
name texte Le nom complet de l’utilisateur. O O O O O
nickname texte Le surnom de l’utilisateur. O O O O O
phone_number texte Le numéro de téléphone de l’utilisateur. Valable uniquement pour les utilisateurs avec des connexions SMS. O O N N O
phone_verified booléen Indique si le numéro de téléphone de l’utilisateur a été vérifié. Valable uniquement pour les utilisateurs avec des connexions SMS. O O N N O
picture texte URL pointant vers [l’image de profil de l’utilisateur] (/users/guides/change-user-pictures). N O O O O
tenant texte Nom du locataire utilisé. N N N N N
updated_at date heure Horodatage indiquant la dernière mise à jour/modification du profil de l’utilisateur. Les modifications apportées à last_login sont considérées comme des mises à jour, donc la plupart du temps, updated_at correspondra à last_login. O N N N O
user_id texte (unique) L’identifiant de l’utilisateur. L’importation permet de synchroniser les enregistrements des utilisateurs entre plusieurs systèmes sans utiliser de tables de correspondance. O N O N O
user_metadata objet Champs personnalisés stockant des informations sur un utilisateur qui n’ont pas d’impact sur les informations auxquelles il peut ou ne peut pas accéder, comme l’adresse professionnelle, l’adresse personnelle ou les préférences de l’utilisateur. Pour en savoir plus, veuillez consulter Présentation des métadonnées. O O O O O
username texte (unique) Le nom d’utilisateur de l’utilisateur. O O O N O

Validation du profil utilisateur

Auth0 accepte un schéma de validation spécifique pour certains champs du profil utilisateur. Consultez le tableau ci-dessous pour une liste des exigences lors de la définition des valeurs d’attribut de profil.

Champ Type Limite de caractère Validation
email courriel La longueur maximale est de 64 caractères pour la partie utilisateur/locale et de 256 caractères pour la partie domaine. Schéma de validation JSON.
La longueur autorisée par défaut pour les noms d’utilisateur est comprise entre 1 et 15 caractères. La longueur maximale est de 128 caractères. Le champ nom d’utilisateur accepte les caractères suivants :
Les caractères alphanumériques (sans accent, automatiquement convertis en minuscules);
Le signe à (@) (mais les adresses courriel ne sont pas autorisées);
Le caractère caret (^);
Le signe de dollar ($);
Le point (.);
Le caractère d’exclamation ( ! );
L’accent grave (`);
Le caractère moins (-);
Le signe numérique (#);
Le caractère plus (+);
Le guillemet simple (’) ;
Le caractère tilde (~);
Le trait de soulignement (_);
Aucun autre caractère/symbole n’est autorisé, et Auth0 ne valide pas ou n’assainit pas les entrées de base de données personnalisées.
phone_number téléphone Format standardisé
Les numéros de téléphone doivent être au format E.164
Regex : ^\N-[0-9]{1,15}$
password chaîne La longueur minimale du mot de passe que vous pouvez définir est de 1 octet, tandis que la longueur maximale est de 72 octets. Caractères standardisés : les caractères ASCII compris entre 33 et 126 sont valides, y compris:
les majuscules de A à Z,
les minuscules de a à z,
les caractères numériques de 0 à 9,
les caractères spéciaux autorisés.
nom chaîne de caractères 1 à 150 caractères Tous les caractères UTF-8 sont pris en charge
nom_de_famille chaîne de caractères 1 à 350 caractères Tous les caractères UTF-8 sont pris en charge.
nom_de_famille chaîne 1 à 150 caractères Tous les caractères UTF-8 sont pris en charge
given_name chaîne de caractères 1 à 150 caractères Tous les caractères UTF-8 sont pris en charge

Trois autres champs ne font pas techniquement partie du profil utilisateur, mais peuvent être utiles lors de l’importation d’utilisateurs :

  • Password_hash (texte) : Mot de passe haché pour la connexion de l’utilisateur. Lorsque des utilisateurs sont créés, Auth0 utilise bcrypt pour sécuriser le mot de passe. L’importation de mots de passe hachés compatibles permet aux utilisateurs de conserver leurs mots de passe, ce qui facilite la tâche. Les mots de passe compatibles doivent être hachés à l’aide de bcrypt $2a$ ou $2b$ et comporter 10 saltRounds. Notez que vous ne pouvez renseigner ce champ que lors de la première importation de l’utilisateur ; vous ne pouvez pas le mettre à jour ultérieurement.

  • Custom_password_hash (objet) : Mot de passe haché pour la connexion de l’utilisateur lorsqu’il est créé à l’aide d’un algorithme alternatif. Utilisé à la place du champs password_hash (Mot de passe haché). Pendant le processus d’importation en bloc, vous pouvez mettre à jour le custom_password_hash (Mot de passe haché personnalisé) si l’utilisateur ne s’est pas connecté en utilisant le custom_password_hash. initialement importé.

En savoir plus