Agent 365 のエージェント ID では、エージェント自律アプリの OAuth フロー – アプリ専用プロトコル がサポートされています。
このフローはエージェントでエージェント ID を使用した認証フローで利用されるという理解でいます。
利用されるケースとしては、独自に開発したエージェントに Agent 365 のエージェント ID の機能を Agent 365 SDK を用いて追加、Microsoft Foundry のエージェントに追加した ツールの認証 などで使用されることがあるのではないでしょうか。
トークンの取得フローとしては冒頭のドキュメントの次の流れとなります。

エージェントから外部リソースにアクセスする際の資格情報ですが、次のようなパターンがあります。
- エージェント ID
- On-Behalf-Of (OBO)
- エージェント ユーザー
エージェント ユーザーを使用しなくても、エージェント ID のトークンを利用したフローにより、エージェントに割り当てられている資格情報でリソースにアクセスすることが可能となります。
このフローは、既存のエージェントに Agent 365 のエージェント ID による管理機能を追加する際にも使用されるものとなるのではないでしょうか。
Microsoft Foundry からエージェント ID で通信した場合に、上記のフローとなることは把握していたのですが、Foundry のエージェントからの通信で、エージェント ID を指定した場合に、実際にどのようなトークンが取得されているのかを確認したことがありませんでした。
そこで、本投稿では Dev Tunnel を使用してトークンを確認してみたという内容となります。
Foundry には、開発中のエージェント向けの 共有プロジェクト ID という概念もありますが、今回は、共有プロジェクト ID ではなく、発行済みのエージェントであり、エージェント ID を使用して確認をしています。
Read the rest of this entry »