Skip to main content

GitHub Copilot コーディング エージェントのファイアウォールのカスタマイズまたは無効化

Copilotコーディングエージェント がaccessできるドメインと URL を制御する方法について説明します。

メモ

ファイアウォール構成は Copilotコーディングエージェント 設定ページに移動されました。 アクションの変数として保存された以前の構成は、そのページに保持されます。

概要

既定では、Copilotのインターネットアクセスがファイアウォールによって制限されます。

インターネットへのアクセスを制限することは、Copilot が驚くべき動作をしたり悪意のある指示を受けたりした場合に、コードやその他の機密情報がリモートの場所に漏えいする可能性のあるデータ流出リスクを管理するのに役立ちます。

ファイアウォールは、Copilot が GitHub と対話するために使用する多数のホストへのアクセスを常に許可します。 エージェントが依存関係をダウンロードできるように、推奨される許可リストも既定で有効になります。

Copilot がファイアウォールによってブロックされる要求を行おうとすると、pull request の本文 (Copilot が初めて pull request を作成している場合) またはコメント (Copilot が pull request のコメントに応答している場合) に警告が追加されます。 警告には、ブロックされたアドレスと要求を行おうとしたコマンドが表示されます。

ファイアウォールによってブロックされたことに関する Copilot からの警告のスクリーンショット。

制限事項

エージェント ファイアウォールには、セキュリティのカバレッジに影響する重要な制限があります。

  •         **エージェントによって開始されたプロセスにのみ適用される**: ファイアウォールは、エージェントが Bash ツール経由で開始したプロセスにのみ適用されます。 構成済み Copilot セットアップ手順で開始されたモデル コンテキスト プロトコル (MCP) サーバーまたはプロセスには適用されません。
    
  •         **GitHub Actions アプライアンス内でのみ適用される**: ファイアウォールは、GitHub Actions アプライアンス環境内でのみ動作します。 この環境外で実行されているプロセスには適用されません。
    
  •         **Bypass potential**: 高度な攻撃によってファイアウォールがバイパスされ、許可されていないネットワークアクセスやデータ流出の可能性があります。
    

このような制限事項があるため、ファイアウォールは一般的なシナリオに対する保護レイヤーとして機能しますが、包括的なセキュリティ ソリューションと見なすべきではありません。

既定で有効になっている推奨される許可リストでは、次のアクセスが可能です。

  • 一般的なオペレーティング システムのパッケージ リポジトリ (Debian、Ubuntu、Red Hat など)。
  • 一般的なコンテナー レジストリ (たとえば、Docker Hub、Azure Container Registry、AWS Elastic Container Registry)。
  • 一般的なプログラミング言語 (C#、Dart、Go、Haskell、Java、JavaScript、Perl、PHP、Python、Ruby、Rust、Swift) で使われるパッケージ レジストリ。
  • 一般的な証明機関 (SSL 証明書の検証を許可するため)。
  • Playwright MCP サーバー用の Web ブラウザーのダウンロードに使われるホスト。

推奨される許可リストに含まれるホストの完全な一覧については、 Copilot 許可リスト 参照 を参照してください。

推奨される許可リストをオフにすることができます。 推奨される許可リストを無効にすると、外部リソースに対する承認されていないaccessのリスクが高くなる可能性があります。

  1. GitHub で、リポジトリのメイン ページに移動します。1. リポジトリ名の下にある [Settings] をクリックします。 [設定] タブが表示されない場合は、 [] ドロップダウン メニューを選び、 [設定] をクリックします。

    タブを示すリポジトリ ヘッダーのスクリーンショット。 [設定] タブが濃いオレンジ色の枠線で強調表示されています。

  2. サイド バーの [Code & automation] セクションで、Copilotコーディング エージェント の順にクリックします。

  3.        **[Recommended allowlist]** の設定を **[off]** に切り替えます。
    

独自の許可リストに加えて推奨される許可リストを使用するには、[Recommended allowlist] 設定を [on] のままにして、[Custom allowlist] ページに追加アドレスを追加します。

エージェントのファイアウォールで追加のホストを許可リストに載せる

エージェントのファイアウォールで追加のアドレスを許可リストに載せることができます。

  1. GitHub で、リポジトリのメイン ページに移動します。1. リポジトリ名の下にある [Settings] をクリックします。 [設定] タブが表示されない場合は、 [] ドロップダウン メニューを選び、 [設定] をクリックします。

    タブを示すリポジトリ ヘッダーのスクリーンショット。 [設定] タブが濃いオレンジ色の枠線で強調表示されています。

  2. サイド バーの [Code & automation] セクションで、Copilotコーディング エージェント の順にクリックします。

  3.        **[Custom allowlist]** をクリックします
    
  4. 許可リストに含めるアドレスを追加します。 以下を含めることができます。

    •      **ドメイン** (たとえば、`packages.contoso.corp`)。 指定したドメインと任意のサブドメインに許可するトラフィック。
      
      
           **Example**: `packages.contoso.corp` では、トラフィックは `packages.contoso.corp` と `prod.packages.contoso.corp` に許可されますが、`artifacts.contoso.corp`は許可されません。
      
    •      **URLs** (例: `https://packages.contoso.corp/project-1/`)。 トラフィックは指定されたスキーム (`https`) とホスト (`packages.contoso.corp`) にのみ許可され、指定されたパスと子孫パスに制限されます。
      
      
           **Example**: `https://packages.contoso.corp/project-1/` では、`https://packages.contoso.corp/project-1/` と `https://packages.contoso.corp/project-1/tags/latest` へのトラフィックは許可されますが、`https://packages.consoto.corp/project-2`、`ftp://packages.contoso.corp`、または `https://artifacts.contoso.corp` は許可されません。
      
  5.        **[規則の追加]** をクリックします。
    
  6. リストを検証後、[Save changes] をクリックします。

ファイアウォールの無効化

警告

ファイアウォールを無効にすると、Copilot は任意のホストに接続できるようになり、コードや他の機密情報が流出するリスクが高くなります。

ファイヤーウォールは、既定で有効にされます。 ファイアウォールを無効にするには、[Enable firewall] 設定を [off] に切り替えます。

参考資料

  •         [AUTOTITLE](/actions/writing-workflows/choosing-what-your-workflow-does/store-information-in-variables#creating-configuration-variables-for-a-repository)
    
  •         [AUTOTITLE](/copilot/customizing-copilot/customizing-the-development-environment-for-copilot-coding-agent)