Les métadonnées Auth0 ne sont pas un magasin de données sécurisé et ne doivent pas être utilisées pour stocker des renseignements personnels. Cela inclut les secrets, les renseignements personnels à haut risque comme les numéros de sécurité sociale ou les numéros de carte de crédit, etc. Les clients Auth0 sont fortement encouragés à évaluer les données stockées dans les métadonnées et à ne stocker que celles qui sont nécessaires à des fins de gestion des identités et des accès.
Type de métadonnées | Nom du champ | Description |
---|---|---|
Informations de l’utilisateur | user_metadata | Stocke les attributs de l’utilisateur tels que les préférences qui n’ont pas d’impact sur la fonctionnalité de base de l’utilisateur. Ces données peuvent être modifiées par les utilisateurs connectés si vous créez un formulaire en utilisant Management API et ne devraient pas être utilisées comme un magasin de données sécurisé. |
Informations d’accès | app_metadata | Stocke des informations telles que les autorisations, le plan Auth0 et les identifiants externes qui peuvent avoir un impact sur l’accès de l’utilisateur aux fonctionnalités. Ces données ** ne peuvent pas** être modifiées par les utilisateurs et il existe des restrictions sur ce qui peut être stocké dans ce champ. |
Informations sur l’application | client_metadata dans l’objet Client , context.clientMetadata dans les règles, et event.client.metadata dans les actions post-connexion. | Stocke les informations à propos d’une application (ou client dans la terminologie OIDC OAuth2). Par exemple, l’URL de la page d’accueil de l’application (toute valeur qu’Auth0 ne définit pas dans les paramètres de l’application). |
Noms des champs de métadonnées
Caractères acceptés
Les noms de champs ne doivent pas contenir les caractères.
(point) ou $
(symbole du dollar).
Par exemple, ceci n’est pas autorisé :
Noms des champs dynamiques
Les noms des champs doivent être statiques. Les noms de champs dynamiques réduisent l’efficacité de l’indexation et entraînent une dégradation des demandes de recherche. Un schéma statique est plus facile à rechercher, à manipuler et à utiliser. Au lieu de faire ceci :Collision de noms
Évitez d’utiliser le même nom pour les champsapp_metadata
et les champs du profil racine. Le champ app_metadata
est fusionné avec le profil racine dans les règles et les actions, qui peuvent remplacer les champs du profil racine.
Par exemple, si un utilisateur a un champ groups
dans son profil racine (renvoyé par un fournisseur d’identité ) et un champ groups
dans app_metadata
, son profil peut ressembler à ceci :
groups
de l’objet utilisateur à partir d’une Rule, celle-ci renvoie : ["internal-group-1", "internal-group-2"]
.
Types de données de métadonnées
Les champs de métadonnées prennent en charge tous les types de données compatibles avec JSON :- Chaîne
- Numéro
- Tableau
- Objet
Limites et restrictions
Limites anti-attaques
Lorsque vous mettez à jour les métadonnées lors de la connexion avec des règles ou des actions, vous êtes soumis aux limites anti-attaques de votre locataire. Pour en savoir plus, consultez Limites anti-attaques des points de terminaison de l’API de gestion.Vous ne devez stocker dans les métadonnées que les données associées à l’authentification de l’utilisateur. Les capacités de stockage et de recherche d’Auth0 sont conçues pour des cas d’utilisation qui ne nécessitent pas de recherches et/ou de mises à jour fréquentes.Si vous devez gérer des données détaillées associées au profil des utilisateurs, vous devez le faire dans un système externe. Vous pouvez stocker l’identifiant de l’utilisateur provenant de ce système en tant que champ de métadonnées dans Auth0.
Limites de taille et stockage
- Les données utilisateur qui peuvent être indexées, interrogées et renvoyées par le point de terminaison de recherche utilisateur sont limitées à 1 Mo par utilisateur. Si le profil utilisateur dépasse 1 Mo, toute valeur d’attribut supérieure à 256 caractères dans
app_metadata (métadonnées de l’application)
etuser_metadata (métadonnées de l’utilisateur)
ne pourra pas être recherchée ou renvoyée dans un résultat de recherche. Si le profil utilisateur dépasse toujours 1 Mo après l’omission de ces grandes valeurs, aucun des attributsapp_metadata (métadonnées de l’application)
etuser_metadata (métadonnées de l’utilisateur)
ne pourra être recherché ou renvoyé pour cet utilisateur. Auth0 capture et enregistre les cas où un profil utilisateur dépasse encore 1 Mo après des omissions sous le code d’événementwum
. Le point de terminaison get user doit être utilisé pour récupérer tous les attributs de métadonnées pour les profils utilisateurs surdimensionnés. - Lorsque vous définissez le champ
user_metadata
à l’aide du point de terminaison d’inscription de l’API d’Auth0 Authentication, vous pouvez inclure un maximum de 10 champs de type chaîne dont les valeurs ne dépassent pas 500 caractères chacune. Pour un exemple de travail avec des métadonnées au cours d’une procédure d’inscription personnalisée, consultez Inscription personnalisée. - Le champ
métadonnées du client
peut avoir un maximum de 10 clés. Ses clés et ses valeurs ont une longueur maximale de 255 caractères chacune et ne peuvent pas contenir de caractères spéciaux UTF-8.
Restrictions
Le champapp_metadata (métadonnées de l’application)
ne doit contenir aucune de ces propriétés :
__tenant
_id
blocked
clientID
created_at
email_verified
email
globalClientID
global_client_id
identities
lastIP
lastLogin
loginsCount
metadata
multifactor_lastmodified
multifactor
updated_at
user_id