Skip to main content
ルールと Hooks の提供終了 (EOL) 日は 2026年11月18日 です。また、2023年10月16日 以降に作成された新しいテナントでは、これらはすでに利用できません。アクティブな Hooks を使用している既存のテナントは、提供終了まで Hooks へのアクセスを維持できます。Auth0 を拡張するには、Actions の使用を強くおすすめします。Actions では、豊富な型情報、インラインドキュメント、公開 npm package を利用できるほか、外部連携に接続して拡張機能をさらに充実させることができます。Actions の機能について詳しくは、Understand How Auth0 Actions Work をご覧ください。移行を支援するために、ルールから Actions への移行 と フックから Actions への移行 のガイドを用意しています。さらに、機能比較、Actions のデモ、および移行に役立つその他のリソースを紹介する専用の Move to Actions ページもあります。ルールと Hooks の非推奨化について詳しくは、ブログ記事「Preparing for Rules and Hooks End of Life」をお読みください。
Auth0 Rules を使用すると、メタデータの読み取り、更新、削除を行えます。以降のセクションでは、次の JSON スニペットで表されるユーザーとその情報の例を参照します。

メタデータを読み取る

とルールを使用して、メタデータを読み取ることができます。また、user_metadata で次のようなプロファイル関連情報を検索することもできます。
  • name
  • nickname
  • given_name
  • family_name
デフォルトでは、Auth0 以外の (Google、Facebook、X など) から提供されるユーザープロファイル属性は、ユーザーがログインするたびにアイデンティティプロバイダーから更新されるため、直接編集できません。アイデンティティプロバイダー由来の属性の詳細については、ユーザープロファイル更新のための Identity Provider Connection の設定を参照してください。 正規化されたユーザープロファイル上の name、nickname、given_name、family_name、または picture のルート属性を編集できるようにするには、接続の同期を Auth0 で設定し、ユーザー属性がアイデンティティプロバイダーから更新されるのはユーザープロファイルの作成時のみになるようにする必要があります。そうすると、これらのルート属性を個別に、または一括インポートで編集できるようになります。 例として、メールアドレス jane.doe@example.com のユーザーに次のメタデータが保存されているとします。
上記のメタデータ例を使うと、Auth0 ルール や Management API の呼び出しで、データセット内の特定の項目を次のように参照できます。
有効なJSONスニペットであれば、どれでもメタデータとして使用できますが、user.app_metadata はデフォルトで Undefined である点に注意してください。 利用可能なメタデータを読み取るには、適切なユーザープロパティにアクセスする必要があります。

アプリのメタデータを読み取る

ユーザーのロールに基づいて判定できます。

ユーザーメタデータを読み取る

色の好みなど、特定の設定に基づいて判断できます。

アプリケーションのメタデータ (clientMetadata) を読み取る

アプリケーションのメタデータ (clientMetadata) は、context オブジェクトの最上位にある省略可能なプロパティです。既存のアプリケーションでは、このプロパティには値が設定されていません。

メタデータを更新する

ルールを使用して、Auth0 が IdP から受け取る SAML 属性を user_metadata または app_metadata にマッピングします。

アプリのメタデータを更新

ユーザーに管理者ロールを追加するには:
その結果、ユーザープロファイルの詳細は次のような JSON 表現になります。

ユーザーメタデータを更新する

ユーザープロファイルにユーザーの fontSize 設定を追加するには:
これにより、ユーザープロファイルの詳細は次のようなJSON形式で表されます。

アプリとユーザーのメタデータを同時に更新する

ルールの処理時間を短縮するため、同じルール内で app_metadata と user_metadata の両方を更新できます。
その結果、ユーザープロファイルの詳細は次のようなJSON形式で表されます。

メタデータの削除

アプリのメタデータのプロパティと値を削除する

プロパティを削除するには、その値を null に設定します。

ユーザーのロールを削除する例

ユーザーのロールを削除するには、以下のサンプルルールを使用します。
これにより、ユーザープロファイルは以下のJSON形式で表されます。

単一のプロパティ値を削除する例

プロパティの値を1つだけ削除するには、その値を削除します。たとえば、ユーザープロファイルから writer ロールを削除するには、次のようにします。
これにより、ユーザープロファイルは次のJSONのように表されます。
roles プロパティは引き続き存在しますが、値は含まれていない点に注意してください。

ユーザーのメタデータのプロパティと値を削除する

ユーザーの色の設定を削除するには:
その結果、ユーザープロファイルの詳細は次のようなJSON形式で表されます。

詳細情報