Skip to main content
Auth0 distingue trois types de métadonnées servant à stocker des types précis d’information.
Les métadonnées Auth0 ne constituent pas un stockage de données sécurisé et ne doivent pas être utilisées pour stocker des renseignements sensibles, comme des secrets à haut risque et des renseignements personnels identifiables (PII), tels que des numéros d’assurance sociale ou de carte de crédit. Auth0 recommande fortement à ses clients d’évaluer les données stockées dans les métadonnées et de n’y conserver que ce qui est nécessaire à des fins de gestion des identités et des accès.

Noms de champ des métadonnées

Caractères acceptés

Les noms de champ ne doivent pas contenir les caractères . (point) ni $ (signe dollar). Par exemple, ceci n’est pas permis :
Mais vous pouvez l’étendre ainsi :

Noms de champ dynamiques

Les noms de champ doivent être statiques. Les noms de champ dynamiques réduisent l’efficacité de l’indexation et nuisent aux performances des requêtes de recherche. Un schéma statique est plus facile à interroger, à manipuler et à utiliser. Au lieu de faire ceci :
Faites ceci :

Collision de noms

Évitez d’utiliser le même nom pour les champs app_metadata et les champs du profil racine. Le champ app_metadata est fusionné au profil racine, dans Rules comme dans Actions, ce qui peut remplacer des champs du profil racine. Par exemple, si un utilisateur a un champ groups dans son profil racine (renvoyé par un ) et un champ groups dans app_metadata, son profil pourrait ressembler à ceci :
Lorsque vous lisez le champ groups dans l’objet user depuis une Rule, il renvoie : ["internal-group-1", "internal-group-2"].

Types de données des métadonnées

Les champs de métadonnées prennent en charge tous les types de données compatibles avec JSON :
  • String
  • Number
  • Array
  • Object
Assurez-vous d’utiliser des types de données cohérents d’un utilisateur à l’autre. Par exemple, si vous stockez une valeur sous forme de chaîne pour un utilisateur (user.user_metadata.age = "23") et sous forme de nombre pour un autre (user.user_metadata.age = 23), vous pourriez rencontrer des problèmes lors de la récupération des données.

Limites et restrictions

Limites de débit

Lorsque vous mettez à jour des métadonnées pendant la connexion à l’aide de Rules ou Actions, vous êtes soumis aux limites de débit de votre tenant. Pour en savoir plus, consultez les limites de débit des points de terminaison de la Management API.
Vous ne devriez stocker dans les métadonnées que les données lié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 des recherches fréquentes ni des mises à jour fréquentes.Si vous devez conserver des données détaillées liées au profil des utilisateurs, vous devriez le faire dans un système externe. Vous pouvez stocker l’identifiant de l’utilisateur dans ce système comme champ de métadonnées dans Auth0.

Limites de taille et stockage

  • Les profils utilisateur Auth0 ont une limite de taille de 10 Ko. Les écritures qui font dépasser cette limite aux profils réussissent pour l’instant, mais pourraient commencer à échouer. Un journal du tenant signale les profils trop volumineux, et nous recommandons fortement de ramener les profils utilisateur sous la limite de taille pour éviter les erreurs.
  • Pour les profils utilisateur trop volumineux antérieurs à l’imposition de cette limite, il existe une limite de 1 Mo par utilisateur pour les données utilisateur pouvant être indexées, interrogées et renvoyées lors de l’utilisation du point de terminaison List or Search Users de la Management API. Pour récupérer tous les attributs utilisateur d’un profil utilisateur volumineux, obtenez les utilisateurs par ID ou adresse courriel.
  • Lorsque vous définissez le champ user_metadata à l’aide du point de terminaison Signup de l’Auth0 Authentication API, vous pouvez inclure un maximum de 10 champs de type chaîne dont les valeurs ne dépassent pas 500 caractères chacune. Pour obtenir un exemple d’utilisation des métadonnées dans un processus d’inscription personnalisé, consultez Custom Signup.
  • Le champ client_metadata peut contenir un maximum de 10 clés. Ses clés et ses valeurs ont chacune une longueur maximale de 255 caractères et ne peuvent pas contenir de caractères spéciaux UTF-8.

Restrictions

Le champ app_metadata ne doit contenir aucune des propriétés suivantes :
  • __tenant
  • _id
  • blocked
  • clientID
  • created_at
  • email_verified
  • email
  • globalClientID
  • global_client_id
  • identities
  • lastIP
  • lastLogin
  • loginsCount
  • metadata
  • multifactor_last_modified
  • multifactor
  • updated_at
  • user_id

En savoir plus