Skip to main content

Personalizando ou desabilitando o firewall para o agente de nuvem do GitHub Copilot

Saiba como controlar os domínios e URLs que agente de nuvem Copilot pode acessar.

Observação

A configuração do firewall foi movida para a agente de nuvem Copilot página de configurações. As configurações anteriores salvas como variáveis do Ações serão mantidas nessa página.

Visão geral

Por padrão, Copiloto acesso à Internet é limitado por um firewall.

Limitar o acesso à Internet ajuda a gerenciar riscos de exfiltração de dados. Um comportamento inesperado de Copilot, ou instruções mal-intencionadas, pode levar a que o código ou outras informações confidenciais sejam vazadas para locais remotos.

O firewall sempre permite o acesso a vários hosts que Copilot usa para interagir com GitHub. Por padrão, uma lista de permissões recomendada também é habilitada para que o agente baixe dependências.

Se Copilot tentar fazer uma solicitação bloqueada pelo firewall, um aviso será adicionado ao corpo da solicitação de pull (para novas solicitações de pull) ou a um comentário (para solicitações de pull existentes). O aviso mostra o endereço bloqueado e o comando que tentou fazer a solicitação.

Captura de tela de um aviso do Copilot sobre o bloqueio pelo firewall.

Limitações

O firewall do agente tem limitações importantes que afetam sua cobertura de segurança.

  • Aplica-se somente aos processos iniciados pelo agente: o firewall só se aplica aos processos iniciados pelo agente por meio de sua ferramenta Bash. Ele não se aplica a servidores ou processos do PROTOCOLO MCP (Model Context Protocol) iniciados nas etapas de instalação configuradas Copilot .
  • Aplica-se apenas no GitHub Actions dispositivo: o firewall só funciona dentro do ambiente do GitHub Actions dispositivo. Ele não se aplica a processos em execução fora desse ambiente.
  • Potencial de bypass: ataques sofisticados podem ignorar o firewall, permitindo potencialmente o acesso não autorizado à rede e a exfiltração de dados.

Essas limitações significam que o firewall fornece proteção para cenários comuns, mas não deve ser considerado uma solução de segurança abrangente.

A lista de permissões recomendada, habilitada por padrão, permite o acesso a:

  • Repositórios de pacotes de sistemas operacionais comuns (por exemplo, Debian, Ubuntu, Red Hat).
  • Registros de contêiner comuns (por exemplo, Docker Hub, Registro de Contêiner do Azure, Registro de Contêiner Elástico da AWS).
  • Pacotes de registros usados por linguagens de programação populares (C#, Dart, Go, Haskell, Java, JavaScript, Perl, PHP, Python, Ruby, Rust, Swift).
  • Autoridades de certificação comuns (para permitir que certificados SSL sejam validados).
  • Hosts usados para baixar navegadores da Web para o servidor MCP da Playwright.

Para obter a lista completa de hosts incluídos na lista de permissões recomendada, consulte Referência da lista de permissões do Copilot.

Configurando o firewall no nível da organização

Os proprietários da organização podem definir todas as configurações de firewall no nível da organização. Para acessar as configurações de firewall:

  1. No canto superior direito de GitHub, clique na foto de perfil e clique em Your organizations.

  2. Selecione uma organização clicando nela.

  3. No nome da organização, clique em Settings. Caso não consiga ver a guia "Configurações", selecione o menu suspenso , clique em Configurações.

    Captura de tela das guias no perfil de uma organização. A guia "Configurações" está contornada em laranja escuro.

  4. Na barra lateral, em "Código, planejamento e automação", clique em Copilot e depois em Agente de nuvem.

Habilitar ou desabilitar o firewall

Aviso

Desabilitar o firewall permitirá Copilot se conectar a qualquer host, aumentando os riscos de exfiltração de código ou outras informações confidenciais.

  1. Em "Acesso à Internet", defina a configuração Habilitar firewall como Habilitado, Desabilitado ou Permitir que os repositórios decidam (padrão).
  1. Em "Acesso à Internet", defina a configuração de lista de permissões recomendada como Habilitado, Desabilitado ou Permitir que os repositórios decidam (padrão).

Controlar se os repositórios podem adicionar regras de lista de permissões personalizadas

Por padrão, os administradores do repositório podem adicionar suas próprias entradas à lista de permissões do firewall. Os proprietários da organização podem desabilitar isso para impedir que os repositórios adicionem regras personalizadas.

  1. Em "Acesso à Internet", defina a configuração permitir regras personalizadas do repositório como Habilitado (padrão) ou Desabilitado.

Gerenciando a lista de permissões personalizada da organização

Os itens adicionados à lista de permissões personalizada da organização se aplicam a todos os repositórios na organização. Esses itens não podem ser excluídos no nível do repositório. As regras no nível da organização e do repositório são combinadas.

  1. Em "Acesso à Internet", clique na lista de permissões personalizada da organização.

  2. Adicione os endereços que você deseja incluir na lista de permitidos. Você pode incluir:

    • Domínios (por exemplo, packages.contoso.corp). O tráfego será permitido para o domínio especificado e quaisquer subdomínios.

           **Exemplo**: `packages.contoso.corp` vai permitir o tráfego para `packages.contoso.corp` e `prod.packages.contoso.corp`, mas não para `artifacts.contoso.corp`.
      
    • URLs (por exemplo, https://packages.contoso.corp/project-1/). O tráfego só será permitido no esquema (https) e no host (packages.contoso.corp) especificados, sendo limitado aos caminhos e seus descendentes especificados.

           **Exemplo**: `https://packages.contoso.corp/project-1/` vai permitir o tráfego para `https://packages.contoso.corp/project-1/` e `https://packages.contoso.corp/project-1/tags/latest`, mas não para `https://packages.contoso.corp/project-2`, `ftp://packages.contoso.corp` ou `https://artifacts.contoso.corp`.
      
  3. Clique em Adicionar regra.

  4. Depois de validar sua lista, clique em Salvar alterações.

Configurando o firewall no nível do repositório

Os administradores do repositório podem definir as configurações de firewall no nível do repositório, incluindo habilitar ou desabilitar o firewall, habilitar ou desabilitar a lista de permissões recomendada e gerenciar uma lista de permissões personalizada. Dependendo da configuração no nível da organização, algumas dessas configurações podem ser bloqueadas.

Para acessar as configurações de firewall:

  1. Em GitHub, acesse a página principal do repositório.

  2. No nome do repositório, clique em Settings. Caso não consiga ver a guia "Configurações", selecione o menu suspenso , clique em Configurações.

    Captura de tela de um cabeçalho de repositório que mostra as guias. A guia "Configurações" é realçada por um contorno laranja-escuro.

  3. Na seção "Código & automação" da barra lateral, clique em e depois em .

Habilitar ou desabilitar o firewall

Observação

Você só poderá alterar essa configuração no nível do repositório se a configuração habilitar firewall no nível da organização estiver definida como Permitir que os repositórios decidam. Se a configuração no nível da organização estiver habilitada ou desabilitada, você não poderá alterar essa configuração para repositórios individuais.

  1. Ative ou desative a configuração Habilitar firewall .

Observação

Você só poderá alterar essa configuração no nível do repositório se a configuração da lista de permissões recomendada no nível da organização estiver definida como Permitir que os repositórios decidam. Se a configuração no nível da organização estiver habilitada ou desabilitada, você não poderá alterar essa configuração para repositórios individuais.

  1. Alterne ou desative a configuração de lista de permissões recomendada .

Gerenciando a lista de permissões personalizada

Observação

Você só poderá adicionar regras personalizadas de lista de permissões no nível do repositório se a configuração Permitir regras personalizadas de repositório no nível da organização estiver definida como Habilitada. Para obter mais informações, consulte Controlando se os repositórios podem adicionar regras de lista de permissões personalizadas.

  1. Clique na lista de permissões personalizada.

  2. Adicione os endereços que você deseja incluir na lista de permitidos. Você pode incluir:

    • Domínios (por exemplo, packages.contoso.corp). O tráfego será permitido para o domínio especificado e quaisquer subdomínios.

           **Exemplo**: `packages.contoso.corp` vai permitir o tráfego para `packages.contoso.corp` e `prod.packages.contoso.corp`, mas não para `artifacts.contoso.corp`.
      
    • URLs (por exemplo, https://packages.contoso.corp/project-1/). O tráfego só será permitido no esquema (https) e no host (packages.contoso.corp) especificados, sendo limitado aos caminhos e seus descendentes especificados.

           **Exemplo**: `https://packages.contoso.corp/project-1/` vai permitir o tráfego para `https://packages.contoso.corp/project-1/` e `https://packages.contoso.corp/project-1/tags/latest`, mas não para `https://packages.contoso.corp/project-2`, `ftp://packages.contoso.corp` ou `https://artifacts.contoso.corp`.
      
  3. Clique em Adicionar regra.

  4. Depois de validar sua lista, clique em Salvar alterações.

Leitura adicional