メインコンテンツへスキップ
サードパーティ API とは、Google、Slack、GitHub などの外部組織が所有・運用する API です。 ユーザーは Token Vault を使用して、AI agent が自分に代わってサードパーティ API にアクセスする権限を付与できます。ユーザーが外部プロバイダーと接続してアクセスを認可すると、Auth0 はそのプロバイダーのトークンを Token Vault に保存します。エージェントはその後トークン交換を行い、ユーザーが付与した権限の範囲にスコープが限定された外部アクセストークンを取得します。

仕組み

Token Vault は、アプリケーションの種類に応じて、以下のトークン交換パターンをサポートしています。

リフレッシュトークン交換

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

リフレッシュトークンを使用した 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アクセストークンを使用する Token Vault

アクセストークンを使用する 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に接続し、顧客情報を取得する。

すべての接続を表示

はじめに

AI agent で Token Vault を使い始めるには、次のリソースを参照してください。

クイックスタート

ユーザーに代わってサードパーティ API を呼び出す

ガイド

Google Calendar の空き状況を確認する

GitHub リポジトリの一覧を取得する

Slack チャンネルの一覧を取得する

Salesforce の商談を取得する

サンプルアプリ

Assistant0: Next.js + LangGraph

Assistant0: Next.js + Vercel AI SDK

Assistant0: FastAPI + LangGraph

Assistant0: Next.js + LlamaIndex

Assistant0: FastAPI + LlamaIndex

Auth0 AI SDK TypeScript サンプル

Auth0 AI SDK Python サンプル

詳細情報

Token Vaultを構成する

Token Vaultを使用したリフレッシュトークン交換

Token Vaultを使用したアクセストークン交換