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 の設定を参照してください。 正規化されたユーザープロファイル上の namenicknamegiven_namefamily_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_metadatauser_metadata の両方を更新できます。
その結果、ユーザープロファイルの詳細は次のようなJSON形式で表されます。

メタデータの削除

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

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

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

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

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

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

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

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

詳細情報