仕組み
Token Vault は、アプリケーションの種類に応じて、以下のトークン交換パターンをサポートしています。リフレッシュトークン交換
Web、モバイル、ネイティブアプリケーションなど、アプリケーションが Auth0 のリフレッシュトークンを取得できる場合は、リフレッシュトークン交換を使用します。これにより、ユーザーがアプリケーションを操作していないときでも、エージェントが外部 API を呼び出せるようになります。

リフレッシュトークンを使用した Token Vault
1
ユーザーが外部プロバイダーを接続する
ユーザーはログインし、Connected Accounts フローを通じて外部プロバイダー (Google など) へのアクセスを認可します。Auth0 はプロバイダーのアクセストークンとリフレッシュトークンを Token Vault に保存します。
2
エージェントが外部アクセストークンをリクエストする
外部 API を呼び出す必要が生じると、エージェントはリフレッシュトークン交換を実行します。具体的には、Auth0 のリフレッシュトークンを
/oauth/token エンドポイントに渡し、Token Vault から外部プロバイダーのアクセストークンを取得します。3
Token Vault が外部アクセストークンを返す
Auth0 はリフレッシュトークンを検証し、保存されている外部トークンを特定したうえで、外部プロバイダーのアクセストークンをエージェントに返します。
4
エージェントが外部 API を呼び出す
エージェントは外部アクセストークンを使ってユーザーの代わりにサードパーティ API を呼び出し、そのレスポンスをユーザーに返します。
アプリケーションで Organizations を使用している場合は、連携済みアカウントを通じて外部プロバイダーを認可する前に、対象の Organization でユーザーを認証してください。Organizations によってセッションのコンテキストが決まりますが、Token Vault がトークンを交換する対象は、あくまでサインインしている個々のユーザーです。
アクセストークン交換
シングルページアプリケーション (SPA) やヘッドレスエージェント、CLI など、アプリケーションがリフレッシュトークンを取得できない場合は、アクセストークン交換を使用します。バックエンド API は、自身に紐づけられたカスタム API クライアントを使ってトークン交換を実行します。

アクセストークンを使用する Token Vault
1
ユーザーが外部プロバイダーを接続する
ユーザーはログインし、Connected Accounts フローを通じて外部プロバイダーへのアクセスを認可します。Auth0 はプロバイダーのトークンを Token Vault に保存します。
2
SPA が Auth0 アクセストークンを使ってバックエンド API を呼び出す
SPA はバックエンド API を呼び出す際、
Authorization ヘッダーに Auth0 アクセストークンを含めて渡します。バックエンドは、トークンの署名、発行者、オーディエンス、有効期限、スコープを検証します。3
バックエンドがアクセストークン交換を実行する
バックエンドは、バックエンド API と同じ識別子で構成されたカスタム API クライアントを使用し、
/oauth/token エンドポイント経由で Auth0 アクセストークンを外部プロバイダーのアクセストークンと交換します。4
Token Vault が外部アクセストークンを返す
Auth0 はリクエストを検証し、保存済みの外部トークンを特定したうえで、外部プロバイダーのアクセストークンをバックエンドに返します。
5
エージェントが外部 API を呼び出す
バックエンドは外部アクセストークンを使ってユーザーに代わりサードパーティ API を呼び出し、そのレスポンスをユーザーに返します。
接続
Auth0は、Google、GitHub、Slackなど、一般的なソーシャルおよびエンタープライズの外部プロバイダーをサポートしています。ユーザーがログインして外部プロバイダーへのアクセスを認可すると、そのアカウントはToken Vault接続としてAuth0に追加されます。 Token Vaultを使用すると、AI agentは承認された接続を通じて外部 (サードパーティ) APIに安全にアクセスし、ユーザーに代わって次のようなタスクを実行できます。- ユーザーのGoogleカレンダーを読み取り、会議の予定を設定する。
- ユーザーのMicrosoftドキュメントにアクセスし、内容を要約する。
- SalesforceなどのCRMに接続し、顧客情報を取得する。