メインコンテンツへスキップ
My Account APIは限定早期アクセスでご利用いただけます。アクセスのリクエストは、Auth0アカウントマネージャーにお問い合わせください。Auth0の製品リリースサイクルについて詳しくは、製品リリースステージをご覧ください。
Auth0 My Account APIは、ユーザーが自分のアカウント情報を管理するための専用エンドポイントを提供します。お客様はこれらのAPIを使用して、アプリケーション内でセルフサービスエクスペリエンスを構築したり、ユーザーアカウントに詳細情報を段階的に追加したりすることができます。 My Account APIは、現在ログインしているユーザーのコンテキスト内で動作し、ユーザー向けアプリケーション内で直接使用できます。
Auth0ドメインの使用とカスタムドメインの使用My Account APIは、正規のAuth0ドメインまたはカスタムドメインの使用をサポートしていますが、以下のプロセス全体で同じドメインを使用する必要があります。
  • アクセストークンの取得
  • audience 値の設定
  • My Account APIエンドポイントの呼び出し
詳細については、カスタムドメインをご覧ください。

My Account APIを有効にする

以下のように、でテナントのMy Account APIを有効にできます。
  1. **[認証]>[API]**に移動します。
  2. MyAccount APIのバナーを見つけます。
  3. **[アクティブ化]**を選択します。
デフォルトでは、My Account APIは次のアプリケーションAPIアクセスポリシーを使用して作成されます。
  • ユーザーフローの場合はrequire_client_grant
  • クライアント(マシンツーマシン)フローの場合はdeny_all
ユーザーに代わってMy Account APIにアクセスするアプリケーションに対しては、明示的にクライアント付与を作成して、アプリケーションがリクエストできるスコープの最大数を定義できるようにする必要があります。あるいは、ユーザーアクセスフローのポリシーをallow_allに変更すると、テナント内のすべてのアプリケーションがMy Account APIから任意のスコープをリクエストできるようになります。 My Account APIが機密情報や操作を公開するようになるため、Auth0ではユーザーアクセスフローにallow_allを使用することを推奨していません。My Account APIでは最小特権の原則に従い、アプリケーションが本当に必要なものだけにアクセスできるようにして、潜在的なセキュリティリスクを最小限に抑える必要があります。 アプリケーションに付与される最終的な権限は、アプリケーションAPIアクセスポリシーによって許可されるスコープや、エンドユーザーに割り当てられたRole-based Access Control(RBAC)の権限、ユーザーの同意(該当する場合)の共通部分によって決まります。
My Account APIへクライアントがアクセスする際のアプリケーションAPIポリシーは更新できません。つまり、クライアントの資格情報フローを使用してMy Account APIにアクセスすることはできません。
アプリケーションAPIアクセスポリシーとそれに関連するクライアント付与を管理する方法について詳しくは、APIへのアプリケーションアクセス:クライアント付与をご覧ください。

アクセストークンを取得する

独自APIのを取得するのと同じ方法で、My Account APIのアクセストークンを取得できます。
My Account APIに機密性の高い操作(認証方法の登録など)の実行を許可する場合は、ステップアップ認証を使用して、多要素認証(MFA)によって追加のセキュリティポリシーを適用することを強くお勧めします。
を使用する場合には、次の記事を参照してください。 埋め込みログインを使用する場合には、次の記事を参照してください。

オーディエンス

My Account APIのhttps://{yourDomain}/me/です。

スコープ

My Account APIは次のスコープをサポートしています。
スコープ説明
create:me:authentication-methodsユーザーが新しい認証方法を登録できるようにします。
read:me:authentication-methodsユーザーが既存の認証方法を参照できるようにします。
update:me:authentication-methodsユーザーが既存の認証方法を変更できるようにします。
delete:me:authentication-methodsユーザーが既存の認証方法を変更できるようにします。
read:me:factorsユーザーが登録できる要素を参照できるようにします。
トークンVaultのある接続アカウントの場合、My Account APIは次のスコープをサポートします。
スコープ説明
create:me:connected_accountsユーザーが新しいアカウントをユーザープロファイルに接続できるようにします。
read:me:connected_accountsユーザーが自分のユーザープロファイルにリンクされている既存の接続アカウントを参照できるようにします。
delete:me:connected_accountsユーザーが自分のユーザープロファイルから接続アカウントを削除できるようにします。

認可コードフローを使用したユニバーサルログイン

手順1:認可コードのリクエスト
手順2:アクセストークン用コードの交換

ネイティブパスキーを使用した埋め込みログイン

手順1:ログインチャレンジのリクエスト
手順2:既存ユーザーの認証

エンドポイント

My Account APIの機能は現在、ネイティブパスキー登録に限られています。Auth0では今後、さらに多くのセルフサービス機能のサポートを追加していく予定です。

認証方法

認証方法を登録する
ユーザーが新しい認証方法(パスキーなど)を登録できるようにします。 エンドポイント POST https://{yourDomain}/me/authentication-methods スコープ create:me:authentication-methods 本文パラメーター
パラメーターデータ型必須/任意説明
type文字列必須認証方法の種類。使用可能な値:passkey
connection文字列任意新しい認証方法を作成する接続の名前。
identity_user_id文字列任意現在のユーザーアイデンティティの識別子。リンクされたアカウントで使用されます。

レート制限

早期アクセスの期間中、My Account APIはテナントレベルで1秒あたり25リクエストに制限されます。

Cross-Originリクエスト

Auth0テナントとは異なるドメインで実行されているブラウザベースのアプリケーション(シングルページアプリケーションなど)からMy Account APIを直接呼び出す場合、Cross-Origin Resource Sharing(CORS)と呼ばれるブラウザのセキュリティポリシーが適用されます。デフォルトでは、ブラウザはこれらのCross-Originリクエストをブロックします。 アプリケーションがAPIに正常にリクエストできるようにするには、次の手順で、アプリケーションのドメイン(その「オリジン」)をクライアントの構成に追加する必要があります。
  1. [Dashboard] > [アプリケーション]に移動して、表示するアプリケーションを選択します。
  2. [Cross-Origin認証]で、[Cross-Origin認証を許可する]をオンにします。
  3. **[許可されたオリジン(CORS)]**を見つけて、アプリケーションのオリジンURLを入力します。
  4. **[保存] **を選択します。
詳細については、Cross-Originリソース共有を構成するをご覧ください。
アプリケーションでCORSを使用する必要がない場合は、[Cross-Origin認証を許可する]をオフにしてください。アプリケーションのURLをこのリストに追加すると、Auth0はそのオリジンからのリクエストを信頼し、クライアント側アプリケーションがAPIにアクセスできるようになります。