Copilot Agent Kitでユーザー認証を有効にする

Copilot Agent Kitは、Microsoft Entra ID v2をサービスプロバイダーとしてSSOを有効にした場合、ユーザー認証付きのカスタムエージェントのテストをサポートしています。 まとめると、必要なアプリケーションはAzureポータルで作成・設定し、その後Copilot Agent Kitでエージェント設定を作成します。

Copilot Agent Kitでユーザー認証を有効にするには:

  • Copilot Agent Kit認証目的でアプリ登録を作成します。
  • Copilot Studio認証用のアプリ登録を作成します。
  • Copilot Studio エージェントの認証を有効にします。
  • Copilot Agent Kitでエンドユーザー認証を有効にしたエージェント設定を作成します。
  • アプリケーションを連携させて、Copilot Agent KitがCopilot Studio認証を使ってDirect Lineに認証できるようにします。

前提条件

  • まだインストールしていなければCopilot Agent Kitをインストールしてください。
  • アプリの登録を作成するための適切なアクセス許可をテナントに付与します。

以降の構成手順では、次の値を使用することをお勧めします。

  • Copilot Agent Kit認証アプリ:KitAuthApp
  • Copilot Studio認証アプリ: CopilotStudioAuthApp
  • Copilot Studio のスコープ: copilot.studio.scope

Copilot Agent Kitの認証アプリケーションを作成する

Copilot Agent Kitの認証アプリケーションを作成するには、カスタムキャンバス用のMicrosoft Entra IDでアプリ登録を作成する手順に従ってください。

追加の手順に注意してください。

  1. Microsoft Entra ID でアプリの登録を作成します。

    (推奨)新しいアプリケーションに KitAuthApp という名前を付けます。

    登録プロセス中に、 ディレクトリ (テナント) ID と アプリケーション (クライアント) ID を書き留めます。 これらの値は後でCopilot Agent Kitでエージェント登録を作成し、Copilot StudioをCopilot Agent Kitアプリに関連付ける際に必要になります。 これらの ID は、アプリ登録の [概要] ページからいつでも取得できます。

  2. リダイレクト URL を追加します。

    必ず Dataverse 環境の URL をポイントしてください。例えば https://<hostname>.crm.dynamics.com

  3. 追加の手順として、[ 証明書とシークレット ] に移動し、新しい クライアント シークレットを作成します。

    (推奨)シークレットに KitAuthApp シークレットの名前を付けます。

    このシークレットの値をセキュリティで保護された一時ファイルに格納します。 これは、後でエージェントの認証を構成するときに必要になります。

  4. API のアクセス許可から、テナント名<管理者の同意を付与>を選択し、[はい] を選択します。 ボタンが使用できない場合は、テナント管理者に入力を依頼する必要があります。

Copilot Studio用の認証アプリケーションを作成する

Copilot Studio の認証アプリケーションを作成するには、「 Microsoft Entra ID を使用してユーザー認証を構成する」の手順に従います。

推奨される追加の手順をメモしておきます。

アプリの登録を作成する場合:

  • 新しいアプリケーションに CopilotStudioAuthApp という名前を付けます。

  • サポートされているアカウントの種類で、任意の組織テナント (任意の Microsoft Entra ID ディレクトリ - マルチテナント) のアカウントおよび個人用 Microsoft アカウント (例えば、Skype、Xbox) を選択します。

  • ディレクトリ (テナント) ID とアプリケーション (クライアント) ID を書き留めます。 これらの値は、後で Copilot Studio でエンド ユーザー認証を有効にする場合に必要になります。 これらの ID は、アプリ登録の [概要] ページからいつでも取得できます。

手動認証を構成する場合:

  • フェデレーション資格情報ではなく、クライアント シークレットを使用します。 クライアント シークレットの値を書き留めます。 セキュリティで保護された一時ファイルに格納します。 後で Copilot Studio でエンド ユーザー認証を有効にする場合に必要になります。

エージェントのカスタム スコープを定義する場合:

  • (推奨) スコープ名には、 copilot.studio.scope を使用します。

  • スコープの下の完全なスコープ名をメモします (api://xxx/copilot.studio.scopeのような形式)。 この値は、後で Copilot Studio でエンド ユーザー認証を有効にする場合に必要になります。

  • 次の追加の手順を実行します。

    1. [+ クライアント アプリケーションの追加] を選びます。
    2. [クライアント ID] に、先ほど作成した KitAuthApp のクライアント ID を入力します。
    3. 承認されたスコープのスコープが、前に作成したスコープ (copilot.studio.scope) であることを確認します。 そのスコープを確認してオンにします。
    4. アプリケーションの追加を選択します。

カスタム エージェントでエンド ユーザー認証を有効にする

カスタム エージェントのエンド ユーザー認証を有効にするには、次の手順に従います。

  1. Copilot Studio の [設定] で、[ セキュリティ > 認証] を選択します。
  2. 手動で認証する を選択します。
  3. [ ユーザーのサインインを必須にする] をオンのままにします。
  4. リダイレクト URL は変更しないでください。 Service provider がクライアント シークレットを持つ Microsoft Entra ID V2 であることを確認します。
  5. [クライアント ID] に、のCopilotStudioAuthApp入力します。
  6. [クライアント シークレット] に、用に作成されたCopilotStudioAuthAppを入力します。
  7. [トークン交換 URL] に、api://xxx/copilot.studio.scope用に作成されたスコープの完全な名前 (CopilotStudioAuthAppのような形式) を入力します。
  8. (省略可能ですが、SharePointのナレッジ ソースには必須です) Scopes で、Files.Read.All を追加します。
  9. 省略可能です。ただし、SharePoint のナレッジ ソースに必要な場合は、Scopes にSites.Read.Allを追加します。
  10. [ 保存] を選択し、ダイアログでもう一度 [保存] を選択します。
  11. 設定を閉じます。
  12. [ 発行] を選択し、ダイアログでもう一度 [発行 ] を選択します。

エンド ユーザー認証を有効にしてエージェント構成を作成する

エンド ユーザー認証を有効にしてエージェント構成を作成するには、次の手順に従います。

  1. Copilot Agent Kitへ行ってください。
  2. ナビゲーションから [エージェント] を選択します。
  3. 新規を選択します。
  4. 名前を入力します。
  5. [構成の種類] で、[テストオートメーション] を選択します。
  6. [Direct Line Settings]\(直接線の設定\) に入力します。 チャネル セキュリティを有効にし、Direct Line シークレットを入力します。
  7. User Authentication で、Entra ID v2 を選択します。
  8. [クライアント ID] に KitAuthApp のクライアント ID を入力します。
  9. テナント ID には、KitAuthApp のディレクトリ ID を入力します。
  10. [スコープ] には、api://xxx/copilot.studio.scope用に作成された完全なスコープ名 (CopilotStudioAuthAppのような形式) を入力します。
  11. 保存して閉じる を選択します。

これで、エンド ユーザー認証を有効にしてエージェントをテストする準備ができました。