Skip to main content
Auth0 では、特定の種類の情報を保存するために使用されるメタデータを 3 種類に分類しています。
Auth0 のメタデータは安全なデータストアではないため、高リスクのシークレットや、社会保障番号やクレジットカード番号のような個人を特定できる情報 (PII) などの機密情報の保存には使用しないでください。Auth0 のお客様には、メタデータに保存するデータを十分に評価し、アイデンティティおよびアクセス管理の目的に必要なものだけを保存することを強く推奨します。

メタデータのフィールド名

使用可能な文字

フィールド名には、. (ドット) または$ (ドル記号) を含めることはできません。 たとえば、次のような名前は使用できません。
ただし、次のように展開することもできます。

動的なフィールド名

フィールド名は固定にするべきです。動的なフィールド名はインデックス効率を下げ、検索クエリの性能低下を招きます。スキーマは固定されているほうが、検索や操作、扱いがしやすくなります。 次のようにするのではなく:
次を行ってください:

名前の競合

app_metadata フィールドとルートプロファイルフィールドに同じ名前を使用しないでください。app_metadata フィールドは、ルールと Actions の両方でルートプロファイルにマージされるため、ルートプロファイルフィールドを上書きしてしまう可能性があります。 たとえば、ユーザーのルートプロファイルに groups フィールド ( から返されるもの) があり、app_metadata 内にも groups フィールドがある場合、プロファイルは次のようになります。
Ruleユーザーオブジェクトgroups フィールドを参照すると、["internal-group-1", "internal-group-2"] が返されます。

メタデータのデータ型

メタデータフィールドでは、JSON互換のデータ型をすべてサポートしています。
  • String
  • Number
  • Array
  • Object
データ型はユーザー間で統一するようにしてください。たとえば、あるユーザーでは値を文字列として保存し (user.user_metadata.age = "23")、別のユーザーでは数値として保存している場合 (user.user_metadata.age = 23)、データの取得時に問題が発生する可能性があります。

制限事項と制約条件

レート制限

ルール または Actions を使ってログイン時にメタデータを更新する場合は、テナントのレート制限が適用されます。詳しくは、Management API Endpoint Rate Limits を参照してください。
メタデータには、ユーザー認証に関するデータのみを保存するようにしてください。Auth0 の保存機能と検索機能は、大量の検索や頻繁な更新を必要としないユースケース向けに設計されています。ユーザーに関する詳細なプロファイルデータを保持する必要がある場合は、外部システムで管理してください。そのシステム上のユーザー識別子を、Auth0 のメタデータフィールドとして保存できます。

サイズ制限と保存

  • user search endpoint でインデックス化、クエリ、および返却できるユーザーデータには、ユーザーごとに 1 MB の上限があります。ユーザープロファイルが 1 MB を超える場合、app_metadatauser_metadata 内の 256 文字を超える属性値は検索できず、検索結果にも返されません。これらの大きな値を除外してもユーザープロファイルが 1 MB を超える場合、そのユーザーの app_metadatauser_metadata の属性は、いずれも検索も返却もできません。Auth0 は、大きな値を除外してもユーザープロファイルが 1 MB を超えている事例を、wumイベントコードで記録します。サイズ超過のユーザープロファイルについてすべてのメタデータ属性を取得するには、ユーザー取得エンドポイントを使用する必要があります。
  • Auth0 Authentication API のSignup エンドポイントを使用して user_metadata フィールドを設定する場合、各値が 500 文字以下の文字列フィールドを最大 10 個まで含めることができます。カスタムのサインアッププロセスでメタデータを扱う例については、Custom Signupを参照してください。
  • client_metadata フィールドには、最大 10 個のキーを設定できます。キーと値はそれぞれ最大 255 文字で、UTF-8 の特殊文字は使用できません。

制限事項

app_metadata フィールドには、以下のプロパティを含めることはできません。
  • __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

詳細はこちら