5
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

[GSA: Internet] 許可された Copilot Studio エージェントだけが通信できる世界を作る

5
Last updated at Posted at 2026-03-02

はじめに

この構成は Microsoft Learn がまだ提供していない “ID × CA × GSA × Firewall を統合した AI エージェントセキュリティアーキテクチャ” を実務視点でまとめたものです。
image.png

本記事は、Microsoft Entra / GSA / Copilot Studio を
すでに業務で触っている、または導入検討している
情報システム・セキュリティ担当者向けの記事です。

以下のシナリオを、検証結果をもとに 順に解説しています。

  • Copilot Studio 環境を GSA と連携させる
     
  • Copilot Studio で AI エージェントを作成し、エージェント ID を自動付与する
     
  • GSA で保護された Web および AI ゲートウェイの機能を用いて、トラフィックを監査・制御する
     
  • 条件付きアクセスでは、すべての エージェント ID に対してブロックのルールを構成する。そして、対象外のグループに対して、意図したエージェント ID のみを追加する(許可されたエージェントのみが動作を許可される)
     
  • もう一つの条件付きアクセスを作成し、意図したエージェント ID は、セッションで GSAのセキュリティプロファイルが適用されるように構成する(これで、目的のエージェント IDは、GSAを経由してインターネットと通信が行える)
    → 現在 (2026/3/3時点)、このような機能は提供されておらず、今後の機能追加が期待されるエリアです。
     
  • 社内の Firewall では、GSAのエンドポイントへのアウトバウンド通信のみを許可し、GSAを経由しないアウトバウンドトラフィックをすべてブロックする(野良エージェントの締め出し)

最終的に、組織内で認められた Copilot Studio エージェントのみが、用意された ファイルポリシーや カテゴリフィルタ、脅威インテリジェンス が適用された状態で、通信はすべて監査・制御されるようになることが期待されます。

公開情報:エージェント用のグローバル セキュリティで保護されたアクセス、セキュリティで保護された Web および AI ゲートウェイを構成する
https://learn.microsoft.com/ja-jp/power-platform/admin/security/secure-web-ai-gateway-agents?wt.mc_id=MVP_407731

この構成により、以下を防止することができるようになります。

  • 管理外 Copilot Studio エージェントによる外部通信
  • GSA を経由しないシャドー AI のインターネットアクセス
  • 意図しないファイル送信・不正サイトアクセス
  • セキュリティポリシーが適用されない AI エージェントの稼働
  • エージェントによる 悪意のある Webサイト(フィッシング、マルウェア)へのアクセス

📝 プレビュー注意
Entra Agent ID と GSA は執筆時点でプレビューのため、挙動・画面は変更される可能性があります。

本記事を検証&執筆しようと思ったきっかけ
以下の なんでも Copilot 特別回 に参加して、Kazuyuki Sakemi さんの説明を聞いて感銘を受けたからです。

私は、2025年下半期は もともと GSA を中心とした技術検証をしていましたが、なんと GSA が AI のセキュリティを担う中心に据えられることを知り、この仕組みをゴールに設定し、検証を重ねてきました。いよいよ、本記事によって締めくくりとなります。

2025/12/15【月曜】なんでもCopilot#59 臨時会!Agent 365 についてゆっくりじっくり理解する!
https://nandemo.connpass.com/event/377696/

上記で発表に使われた資料です
https://www.docswell.com/s/skmkzyk/ZEYGRR-getting-to-know-microsoft-agent-365

1. 前提事項

以下の記事を参考に Copilot Studio と GSA インターネットアクセス を利用できるようにしておきます。

1-1. Copilot Studio の利用開始

以下の記事を参考に Copilot Studio を利用できるようにしておきます。

【これを読めばOK】Copilot Studio のはじめかた
https://qiita.com/carol0226/items/eeaca302b423146184f9

1-2. GSA インターネットアクセス の利用開始

以下の記事を参考に GSA インターネットアクセス を利用できるようにしておきます。

[GSA:Internet] Microsoft Entra インターネット アクセス を構成する
https://qiita.com/carol0226/items/ae2bfdb209170fb41bae

2. Copilot Studio (Power Platform) 側の設定

Copilot Studio (Power Platform) 側の設定で、AI エージェントの通信を GSA へ転送するための設定を行います。

公開情報:Copilot Studio エージェントのネットワーク制御を有効にする
https://learn.microsoft.com/ja-jp/power-platform/admin/security/secure-web-ai-gateway-agents?wt.mc_id=MVP_407731#enable-network-controls-for-copilot-studio-agents

1.Power Platform 管理センター へ管理者権限でアクセスします。
https://admin.powerplatform.microsoft.com/

2.左ペインから セキュリティ > IDおよびアクセス管理 を開き エージェントのグローバルセキュアアクセス をクリックします。
image.png

3.以下の画面で、GSA を連携させたい Copilot Studio 環境を選択し 設定 を押します。

4.エージェントのグローバルセキュアアクセスを有効化する にチェックを入れて 保存 を押します。

5.以下の通り、GSA が有効 の欄が、はい に変更されていること確認します。
image.png

参考:How to Configure Global Secure Access for Microsoft Copilot Studio Agents | Step-by-Step Tutorial
https://www.youtube.com/watch?v=Y4NnXIsJqmQ

3. GSA 側の設定

Copilot Studio エージェントに適用させたい セキュリティポリシーを作成します。
※テストを行うことが目的の場合は、脅威インテリジェンス が最も少ない手順で実装できます。

3-1. AI エージェントに適用させたい GSA ポリシーの構成

  • Web コンテンツフィルタリング
    URLフィルタの構成を理解しておく必要がある分、手間が掛かりますが、テストの際に 意図したサイトへのアクセスがブロックされるかどうかでテストが行えます。 
    [GSA:Internet] Web コンテンツ フィルタリングを構成する
    https://qiita.com/carol0226/items/e33dd928ae848691bb1e
     
  • 脅威インテリジェンス
    設定がシンプルで、既知の悪意のあるテストサイト ( entratestthreat.com や smartscreentestratings2.netなど) へ Copilot Studio エージェントをアクセスさせるだけでテストが実施できます。
    [GSA: Internet] 脅威インテリジェンスで悪意のあるサイトへのアクセスを防止する
    https://qiita.com/carol0226/items/bf6e6c765cbbff5e5f00
     
  • ファイルポリシー
    Copilot Studio エージェントによって、ストレージなどへアップロード/ダウンロード のアクションを定義し、命令することによってテストができます。
    ファイルポリシーの構成手順は紹介しますが、テスト用エージェントの作成方法は割愛します。

公開情報:Copilot Studio エージェントのセキュリティ ポリシーを作成する
https://learn.microsoft.com/ja-jp/power-platform/admin/security/secure-web-ai-gateway-agents?wt.mc_id=MVP_407731#create-security-policies-for-copilot-studio-agents

Copilot Studio エージェントに、脅威インテリジェンス、ファイルポリシーを適用する際に TLS インスペクションの構成は必要なのか?

結論から言うと、TLS インスペクションの構成は不要です。

TLS インスペクションは、利用者が PC 上のブラウザやアプリから
HTTPS 通信を行う際に、通信内容(パケットの中身)を検査するための構成です。

Copilot Studio エージェントの通信に対して適用する 脅威インテリジェンスやファイルポリシーは、通信先の評判情報やエージェント実行基盤上の制御に基づいて評価されるため、通信内容を復号する TLS インスペクションを構成する必要はありません。

Copilot Studio エージェントの通信は Microsoft 管理下の実行基盤から発生するため、ユーザー端末のように TLS を中間者復号する前提の構成自体が存在しません。

3-2. ポリシーをベースラインプロファイル にリンクする

前章で作成したポリシーは、Copilot Studio に適用するためには GSA の ベースラインプロファイル へリンクする必要があります。

以下の画面は、ベースラインプロファイル へ 上記の3種類(5つのルール)をリンクした状態です。

以下の私の記事で、セキュリティプロファイル と ベースラインプロファイル の違いや プロファイルへリンクする手順を説明しています。

[GSA : Internet] ポリシーを適用するためのプロファイル設定まとめ
https://qiita.com/carol0226/items/1d9fa23904947c8598fd

注意
今後の機能拡張では セキュリティプロファイル へ割り当てできるようになることで、エージェントごとに異なるポリシーを適用できるようになることが期待されます。

しかし、現時点 (2026/3/3) では、ベースラインプロファイル への適用(つまり 人間と AIエージェントに対して共通するポリシーの適用のみ)がサポートされています。

4. エージェント ID の自動作成を有効化

GSA の制御とは直接は関係無いのですが、このタイミングで Copilot Studio エージェント用に エージェント ID を自動作成する機能を有効化しておきます。

公開情報:Copilot StudioエージェントのMicrosoft EntraエージェントIDを自動的に作成
https://learn.microsoft.com/ja-jp/microsoft-copilot-studio/admin-use-entra-agent-identities?wt.mc_id=MVP_407731

エージェント ID の自動作成をこのタイミングで実施する理由
この設定が ON になっていると、Copilot Studio エージェントを作成するたびに、エージェント ID が自動作成されて割り当てられるようになります。

本記事の後半セクションでセキュリティを考慮した運用を紹介しており、そこでエージェント ID を活用していますので、このタイミングで エージェント ID が付与されるようにしています。

機能要望への投票
以下の記事に投票いただくことで、あとからエージェント ID を割り当てできるような機能追加が行われるかもしれません。ぜひ皆さまの1票を投票ください。
https://ideas.powervirtualagents.com/d365community/idea/eb6d56f6-31fb-f011-bb46-7c1e52a98f97

Copilot Studio エージェントの エージェント ID を有効にする手順
1.Power Platform 管理センターを開きます。
https://admin.powerplatform.microsoft.com

2.サイドバーの Copilot タブ に行き、設定 を選択します。
表示されるリストの Copilot Studio セクションで Copilot Studio の Entra エージェント ID を選択します。
image.png

3.エージェント ID を付与したい Copilot Studio 環境を選択し、その後 設定の編集 を選択します。

4.次のパネルで オン を選択し、保存 を選択します。 保存後、パネルを閉じてください。

※この変更を元に戻すには、同じ手順を繰り返し、オン のチェックボックスを消し、その後 保存 を行ってください。

現在 (2026/2/25 時点)は、Copilot Studio エージェント(エージェント ID が付与されていない状態)に対して、あとから エージェント ID を割り当てるような機能がないため、上記の自動割り当てを行うしか手段がありません。そのような場合は エージェントを作り直す必要があります。

Agent ID については、以下の記事で分かりやすく説明されています。

Microsoft Entra Agent ID 入門編
https://zenn.dev/microsoft/articles/a52eae77302ce7

5. AI エージェントのテスト例

準備が整ったので、外部と通信する AI エージェントを作ってみます。
該当の Copilot Studio 環境で作成された AI エージェントは、強制的に GSA で制御されるようになっているため、その動作を確認します。

5-1. テスト用 サンプル AI エージェントの展開

GSA 経由の HTTP アクセスのテストは、プロンプトに書いただけでは実行されません。
必ず「アクションとして定義」し、「エージェントに使用を許可」する必要があります。

公開情報:HTTP 要求を行う
https://learn.microsoft.com/ja-jp/microsoft-copilot-studio/authoring-http-node?wt.mc_id=MVP_407731

重要
実は、プロンプトで Invoke-WebRequest や curl を使って [URL] へアクセスした結果を返して・・・と依頼すると、それっぽい回答をしてくるのですが、これは 実際には 通信をしていません。

※ この挙動は「ハルシネーション」ではなく、Copilot Studio が外部通信を行えない前提のもと、モデルが過去知識を使って推論している結果です

そのため、本章で紹介しているような HTTP 要求 を行わせる必要があります。
これをしないと GSA での通信をテストできません。

具体的な手順
1.Copilot Studio を開きます。
 ※Copilot Studio ライセンスが付与された 利用者アカウントを使います。
 https://copilotstudio.microsoft.com

2.サイドバーから エージェント を選び +空のエージェントを作成する を押します。
image.png

3.画面が開いたら、上位タブの トピック を開きます。
続けて、トピックの追加 を開き 最初から を選択します。
image.png

4.赤枠の 詳細 を開き コードエディターを開く を選択します。

5.以下の緑枠の箇所に、後述するコードを貼り付けて 保存 を押します。

以下が 貼り付けるコードです。

kind: AdaptiveDialog
beginDialog:
  kind: OnRecognizedIntent
  id: main
  intent:
    triggerQueries:
      - http request
      - send http request
      - make an http call
      - perform a get request
      - post data to server
      - api call
      - fetch from url
      - request with headers
      - test endpoint

  actions:
    - kind: HttpRequestAction
      id: y36Mt3
      url: https://entratestthreat.com
      headers:
        Content-Type: application/json

inputType: {}
outputType: {}

6.以下の通り トピックに名称を付けて 保存 を押します。

7.以下のような画面になれば OK です。
緑下線の場所に記載されている URL 欄は、テストに使うサイトに書き換えて利用します。
プロンプト欄に トリガーしてください と入力して 実行 します。
image.png

8.すると 以下のメッセージが表示されます。これは エージェントがアクセスした URL が GSA によってブロックされたことを示していますので、テストは成功です。

エラーメッセージ:このエージェント要求はネットワーク制御ポリシーによってブロックされました。エージェントの所有者にお問い合わせください。エラーコード: NetworkIsolationRequestNotAllowed 会話 ID: xxxx

image.png

以下のような画面となった場合は、GSA ではブロックされずに、外部と通信できたことを意味しています。この場合は、GSA を経由したかどうかを トラフィックログを使って確認してください。
image.png

URL を変更しながらテストの実施
あとは、トピックを編集する を押すことで HTTP 要求 でアクセスする URL を変更することが出来るため、URL を変えながら、テストを実施してみてください。

5-2. トラフィックログの確認

事前確認
まずは、以下の画面で テストに使った AI エージェントの スキーマ名 を控えておきます。
Copilot Studio の画面で エージェント が開いた状態から 設定 ボタンを押します。
設定画面から 上級 を選び メタデータ 内の スキーマ名 をコピーします。
image.png

トラフィックログの抽出方法
1.Microsoft Entra 管理センター を管理者ロールで開きます。
https://entra.microsoft.com

2.左ペインの 監視 内の トラフィックログ を開きます。
続けて トランザクション タブを選んでから フィルターを追加する より AI エージェント名 を選択します。
image.png

3.以下の欄に、事前確認でコピーした スキーマ名 を貼り付けて 適用 を押します。

4.以下のように 該当の AI エージェントがアクセスしたログが表示されます。
(1) entratestthreat.com にアクセスして 脅威インテリジェンスでブロックされたログです。
image.png

(2) smartscreentestratings2.net にアクセスして 脅威インテリジェンスでブロックされたログです。
image.png

(3) qiita.com にアクセスして Web コンテンツフィルタリングの例外扱いで 許可 されたログです。
image.png

(4) www.ntt.com にアクセスして Web コンテンツフィルタリングで ブロック されたログです。
image.png

ポイント
このように、AI エージェントに通信させた結果が トラフィックログに出力されていれば、Copilot Studio と GSA の連携は正常動作しています。

6. Copilot Studio でサポートされているコネクタの考慮

前章までの構成が完了していれば、あとは 自由に AI エージェントを開発していきましょう。
すべてのエージェントが GSA で構成したセキュリティポリシーの範囲内で動作するようになっています。

以下のコネクタが GSA に対応しています。
これらのコネクタを使って、エージェントを作成してください。

公開情報:サポートされているコネクタ
https://learn.microsoft.com/ja-jp/power-platform/admin/security/secure-web-ai-gateway-agents?wt.mc_id=MVP_407731#supported-connectors

懸念事項
上記以外のコネクタを使用した場合は、GSA をサポートしていないため、GSA を経由せずに外部と通信が可能になってしまいます。そのため、利用可能なコネクタを管理者側で絞ったり、エージェント ID 単位で 例外として GSA 非対応のコネクタ を許可するなどの管理を検討する必要が生じます。

以下のエージェントのデータポリシーを構成することで、利用者に許可する コネクタ を定義することが可能です。

この構成は 2026/3/3 時点で、私は未検証です。今後 検証を実施して記事を追加投稿予定です。

公開情報:エージェントのデータ ポリシーを構成する
https://learn.microsoft.com/ja-jp/microsoft-copilot-studio/admin-data-loss-prevention?wt.mc_id=MVP_407731

7. セキュリティを考慮した運用

前章までの構成で、Copilot Studio エージェントが行う通信を GSA で制御できるようになりました。本章では、許可した エージェントだけが 外部と通信することができ、それ以外はブロックされる構成や、エージェント以外の 人 や データセンター設備 の通信をどのように制御すべきかを合わせて紹介していきます。

ガバナンスを適用するためには、あらかじめ 全エージェント ID をブロックするルールを用意しておき、申請などによって、このブロックルールから除外させるように構成すると良いでしょう。

すると、情報システム部などで 管理を行うことが可能になります。
エージェントの利用目的や、適用範囲、権限、有効期限、管理者 などを明確にしたうえで許可をするなどが可能になります。

7-1. 条件付きアクセス

この構成は 2026/3/3 時点で、私は未検証です。今後 検証を実施して記事を追加投稿予定です。

注意点
どうも、テナントに Microsoft 365 Copilot のライセンスがあり、Copilot Frontier をオプトインし、Agent 365 を有効にしていないと、条件付きアクセスを構成しても空振りしているような気がします。詳細が判明したら記事を追記します。
https://adoption.microsoft.com/files/copilot/Frontier_Getting-started-guide.pdf
(上記の PDF より抜粋)
image.png

既定では、このルールが無いので、エージェント ID が発行されると、自由にアクセスが可能です。
それを制御するために、エージェント ID をブロックするルールを作っておきます。

本記事で構成する条件付きアクセスは、ユーザーではなく Copilot Studio エージェントに割り当てられた「Microsoft Entra Agent ID」を評価主体としています。

公開情報:シナリオ 1: 特定のエージェントのみにリソースへのアクセスを許可する
https://learn.microsoft.com/ja-jp/entra/identity/conditional-access/agent-id?wt.mc_id=MVP_407731&tabs=enhanced-object-picker#scenario-1-allow-only-specific-agents-to-access-resources

以下は、上記の公開情報で、拡張オブジェクトピッカー を使用した設定画面のキャプチャです。

まずは、すべての エージェント ID を 対象として選択

利用を許可する エージェント ID を対象外に設定します。

ターゲットリソースは、すべてのリソース を選びます。

★"すべてのエージェントリソース" ではないので、注意してください。

公開情報:エージェント ID の条件付きアクセス
https://learn.microsoft.com/ja-jp/entra/identity/conditional-access/agent-id?wt.mc_id=MVP_407731

公開情報:条件付きアクセス ポリシーに関する問題のトラブルシューティング
https://learn.microsoft.com/ja-jp/microsoft-copilot-studio/security-conditional-access?wt.mc_id=MVP_407731

公開情報:条件付きアクセス: ターゲット リソース
https://learn.microsoft.com/ja-jp/entra/identity/conditional-access/concept-conditional-access-cloud-apps?wt.mc_id=MVP_407731

7-2. GSA インターネットアクセス の全社デバイスへの展開

全社の クライアントデバイスに GSA を展開し、人による操作に対しても AI エージェントと同様のルールを適用することができます。

7-2-1. クライアントデバイスの TLS インスペクション

Copilot Studio エージェントの通信は Microsoft のクラウド基盤上で発生し、バックエンドで直接評価されるため TLS インスペクションは不要です。一方、ユーザー PC からの Web アクセスは端末発の HTTPS トラフィックになるため、GSA 側で内容を検査するには TLS インスペクションが必要になります。

その結果、エージェントに課したものと同じポリシーを GSA クライアント(つまり人間の利用者)に対しても適用し、社内統一のガバナンスを適用します。

[GSA : Internet] TLS インスペクションを構成する完全ガイド(AD CS 対応)
https://qiita.com/carol0226/items/9cda8cfa8c6b437f1161

TLS インスペクションを構成することで 上記の記事内にも記載されている以下の制御を利用者(人)に対して適用できます。

  • Web コンテンツフィルタリング(リンク
  • 脅威インテリジェンス(リンク
  • AI プロンプトポリシー(リンク
  • ファイルポリシー

7-2-2. ユーザーが GSA を勝手に止めることが無いようにします

既定では、ユーザーが手動で GSA クライアントを Disable 出来てしまいます。Disable されてしまうと、GSA の制御が効かなくなってセキュリティの穴になります。そのような行為を防止するための設定です。

[GSA : Internet] 利用者が勝手に Disable できないようにする方法
https://qiita.com/carol0226/items/1fa20603f1e6f55112fb

7-2-3. 社内ネットワークからのアウトバウンドを GSA 経由にする

この構成は 2026/3/3 時点で、私は未検証です。今後 検証を実施して記事を追加投稿予定です。

社内の拠点や データセンター からのアウトバウンド通信を GSA 経由にします。
それ以外のアウトバウンドポートをブロックするように構成します。

このように構成することで、AI エージェント、クライアントデバイス と同様のセキュリティ設定を オンプレミス環境に適用することが可能になります。

具体的には、以下の公開情報で説明されている リモートネットワークを構成し、社内のデフォルトゲートウェイを このリモートネットワークのルーターに構成することで目的を実現できます。

公開情報:リモート ネットワーク接続について
https://learn.microsoft.com/ja-jp/entra/global-secure-access/concept-remote-network-connectivity

8. まとめ

本記事で解説した構成は、「AI エージェントを野良化させない」ための実運用アーキテクチャです。

本記事で未検証の項目(2026/3/3 時点)

  • 条件付きアクセスによる Agent ID 制御の実動確認
  • データポリシーによる GSA 非対応コネクタ制御
  • Remote Network を用いたオンプレ Egress の強制

Copilot Studio エージェントは、HTTP ノードや対応コネクタを用いることで外部通信を行いますが、GSA(Secure Web / AI Gateway)を有効化した環境では、その通信を強制的に GSA 経由に統一できます。これにより、AI エージェントの通信も人のインターネット利用と同様に、検査・制御・監査の対象とすることが可能になります。

さらに Microsoft Entra Agent ID を自動付与することで、各 Copilot Studio エージェントは「誰が作ったか分からない存在」ではなく、明確に識別可能な ID 主体として扱えるようになります。この Agent ID を条件付きアクセスの評価対象とすることで、許可されたエージェントのみを動作させ、それ以外は既定でブロックするといったガバナンス設計が実現できます。

GSA 側では、Web コンテンツフィルタリング、脅威インテリジェンス、ファイルポリシーを組み合わせることで、エージェントがどこへ通信し、何を送受信しようとしたのかを可視化・制御できます。Copilot Studio エージェントの通信に対して TLS インスペクションは不要であり、Microsoft 管理下の実行基盤を前提とした評価が行われる点も重要なポイントです。

さらに社内 Firewall で GSA のエンドポイント宛のみアウトバウンド通信を許可することで、GSA を経由しない通信経路そのものを遮断できます。これにより、管理外・意図しないエージェントやシャドー AI が外部と通信する余地を物理的に排除できます。

このように、ID(Entra Agent ID)・ポリシー(条件付きアクセス)・通信制御(GSA)・出口対策(Firewall)を組み合わせることで、許可された Copilot Studio エージェントだけが、常に検査下でインターネットに出られる状態を設計として実現できます。本構成は、AI エージェントをゼロトラストの枠組みに組み込むための、実務的かつ現実的なアプローチとなります。

参考情報

5
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?