> ## Documentation Index
> Fetch the complete documentation index at: https://auth0.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Auth for UCP

> Auth0でUniversal Commerce Protocol（UCP）サーバーを保護し、Google GeminiなどのAI agentが、検証済みの購入者に代わってサービスの検出、アカウントのリンク、チェックアウトを行えるようにします。

> [!WARNING]
>
> **Auth for UCP機能は[早期アクセス](https://auth0.com/docs/ja-jp/troubleshoot/product-lifecycle/product-release-stages.md)段階にあります。**
>
> この機能を使用することにより、OktaのMaster Subscription Agreementに定められた該当する無料トライアル条件に同意したものとみなされます。参加をご希望の場合は、[Limited Early Access Partnership Programフォーム](https://forms.gle/7qjaSh4ZQSqrysf27)にご記入のうえ、お申し込みください。

[Universal Commerce Protocol (UCP) ](https://ucp.dev/)は、AI agentがマーチャントのカタログ、カート、チェックアウトを一貫した方法で操作できるようにするオープン標準です。UCPは、エージェントが何を購入できるか、商取引のフローがどのように機能するかを定義しますが、エージェントが誰なのか、どの買い物客の代理として動作するのか、何を行う権限があるのかは定義していません。Auth for UCPは、既存のAuth0テナントを使ってUCPサーバーにアイデンティティと認可のレイヤーを追加し、このギャップを埋めます。

Auth for UCPを使用すると、次のことが可能になります。

* UCPのスコープを公開し、エージェントがテナントの標準的なOAuthおよびOIDCのメタデータから検出できるようにする。
* エージェントプラットフォームを利用する買い物客を、標準的なOAuthのアカウントリンクによってサイト上の本人のアカウントにリンクする。
* 購入を検証済みの買い物客に紐付け、チェックアウトを匿名扱いにするのではなく、エージェントが注文履歴、ロイヤルティポイント、利用可能なクーポンを活用できるようにする。

AI agentプラットフォームを信頼するかどうかはマーチャントが判断し、発行されたトークンの送信先についてもマーチャントが責任を負います。UCPアクセストークンのカスタムクレームには個人データを含めないでください。

## ユースケース

* AIアシスタントを新たな販売チャネルとして活用する：Geminiなどのエージェントプラットフォーム上で、買い物客がブランドの商品を見つけ、比較し、購入できるようにします。チェックアウトは検証済みのユーザーアイデンティティに紐づけられます。
* エージェントによるショッピング体験をパーソナライズする：エージェントを利用する買い物客を自社サイトのアカウントにリンクします。これにより、チェックアウトを毎回匿名として扱うのではなく、エージェントが注文履歴を活用したり、ロイヤルティポイントを付与したり、対象のクーポンを適用したりできるようになります。
* エージェントがリクエストできる内容を制御する：サーバーがサポートするUCPスコープのみを公開し、各エージェントプラットフォームにはクライアントへの認可を通じて権限を付与します。これにより、エージェントは承認済みのアクセスしかリクエストできなくなります。

## 対象読者

Auth for UCPは、独自のUCPサーバーを構築・運用しており、標準に準拠した認可レイヤーを必要とするマーチャント向けの機能です。UCPを標準でサポートしているeコマースプラットフォームをご利用の場合は、通常、ご自身で設定する必要はありません。

## 仕組み

Auth0は、現在UCPエージェントが使用しているフローをサポートしています。ユーザーエクスペリエンスに合わせて、有効にするフローを選択してください。

| フロー | 使用される場面 | Auth0の動作 |
| - | - | - |
| ゲストアクセス | 買い物客がアカウントを作成もリンクもせずに、ゲストとして購入する場合。 | エージェントプラットフォームは、UCPリソースサーバーに対してクライアントクレデンシャルグラントを使用します。Auth0はこれを、マシンツーマシン (M2M) アクセスを許可する他のAPIと同じように扱うため、UCP固有の設定は必要ありません。 |
| 標準のアカウントリンク | 買い物客がすでにアカウントを持っている、または新たに作成する場合。エージェントプラットフォームが同意画面を表示した後、買い物客をAuth0テナントにリダイレクトします。 | パブリッククライアントと機密クライアント向けの認可コードフロー (パブリッククライアントではPKCEを使用) で、UCPサーバー用に公開したスコープを使用します。 |

ゲストチェックアウトをサポートするには、エージェントプラットフォームを表すアプリケーションに対し、UCPリソースサーバーへのクライアントクレデンシャルグラントの使用を認可してください。ゲストチェックアウトを許可しない場合は、このグラントを認可しないでください。

Auth0では、UCP統合を構成する各要素を既存の概念に対応させています。

| UCPの概念 | Auth0の概念 |
| - | - |
| Geminiなどのエージェントプラットフォーム | ファーストパーティまたはサードパーティ製アプリケーション (パブリックまたは機密) |
| UCPサーバー | UCPリソースサーバータイプのAPI (リソースサーバー) |
| `dev.ucp.shopping.checkout:manage`などのUCPスコープ | APIの権限 (スコープ) |
| エージェントプラットフォームがUCPサーバーを呼び出すための権限 | サードパーティ製アプリケーションでは必須：アプリケーションとAPI間のクライアントへの認可 |

## はじめに

Auth0でUCPサーバーを保護するには、以下の手順を実行します。

1. [UCPリソースサーバーを構成](https://auth0.com/docs/ja-jp/ai-agents-mcp/auth-for-ucp/configure-ucp-resource-server.md)し、スコープを検出メタデータに公開します。
2. 認可コードフローで使用する[標準のアカウントリンクをセットアップ](https://auth0.com/docs/ja-jp/ai-agents-mcp/auth-for-ucp/set-up-standard-account-linking.md)します。

## 制限事項

早期アクセス版のAuth for UCPには、以下の制限があります。

* UCPリソースサーバーとして構成できるAPIはテナントごとに1つだけで、検出メタデータに公開されるのもそのAPIのスコープに限られます。
* `dev.ucp`スコープは、UCP以外のサーバーでは作成できません。
* ログインアクションの`api.accessToken.setScope()`コマンドを使って、UCP以外のサーバーに`dev.ucp`スコープを追加することはできません。
* エージェントプラットフォームは`scope`を送信しますが、`audience`は送信しません。そのため、Auth0はUCPフローでテナントのデフォルトオーディエンスを使用します。
* Auth0 Organizationsには対応していません。

## 詳細情報

* [スコープ検出メタデータ](https://auth0.com/docs/ja-jp/ai-agents-mcp/auth-for-ucp/scope-discovery-metadata.md)
