Skip to main content

Sobre a nuvem e as áreas restritas locais para GitHub Copilot

As áreas restritas locais e de nuvem fornecem ambientes de execução isolados que permitem Copilot interagir com segurança com código, ferramentas, sistema de arquivos e recursos de rede com segurança em seu computador local ou em ambientes de nuvem totalmente isolados.

Observação

As áreas restritas locais e de nuvem estão GitHub Copilot dentro prévia pública e sujeitas a alterações.

Introdução

Copilot as áreas restritas locais e de nuvem são a plataforma de execução que alimenta experiências seguras em área restrita, CLI do GitHub Copilotlocalmente e na nuvem. À medida Copilot que executa mais ações em seu nome, executando ferramentas, executando comandos e modificando arquivos, a área restrita fornece o isolamento, a portabilidade e os controles de política necessários para adotar fluxos de trabalho agente com segurança.

Atualmente, o sandboxing se aplica às CLI do Copilot sessões. Você também pode optar por usar o sandboxing na nuvem ao iniciar uma nova sessão no aplicativo GitHub Copilot. Para obter mais informações, consulte Trabalhando com sessões de agente no GitHub aplicativo Copilot.

Com o sandboxing, você pode escolher onde Copilot as execuções:

  • Área restrita local: execute Copilot com segurança em seu próprio computador. Os comandos executados Copilot têm acesso restrito aos recursos do sistema de arquivos, rede e sistema. Você pode usar a área restrita local sem custo adicional.
  • Área restrita de nuvem: execute a sessão inteira CLI do Copilot remotamente, dentro de um ambiente Linux totalmente isolado e efêmero hospedado por GitHub. O sandboxing em nuvem é cobrado de acordo com o uso.

Isolamento local em sandbox

Observação

Atualmente, o sandboxing local é um recurso experimental. Para usá-lo, comece CLI do Copilot com a opção ‑‑experimental de linha de comando ou insira /experimental on durante uma sessão.

O isolamento local permite executar Copilot em um ambiente isolado diretamente na sua máquina, com acesso restrito ao seu sistema de arquivos, à conexão de rede e aos recursos do sistema.

A área restrita local está desativada por padrão. Até habilitá-lo, os comandos do shell executados diretamente em seu computador com o mesmo acesso que sua conta de usuário: eles podem ler, gravar e excluir sempre que Copilot possível, acessar qualquer rede que seu computador possa acessar e usar suas credenciais sem restrições. Habilitar a área restrita local restringe esse acesso a uma política que você controla.

Como funciona o sandboxing local

O sandboxing local é alimentado por Microsoft MXC (contêiner de eXecução), uma tecnologia multiplataforma que fornece uma interface comum para os mecanismos de isolamento disponíveis em cada sistema operacional. CLI do Copilot declara a política de área restrita que deseja impor — quais caminhos são legíveis ou graváveis, se o acesso à rede é permitido e assim por diante — e o MXC aplica essa política usando o back-end de isolamento apropriado para seu sistema operacional.

As tecnologias de isolamento existem em um espectro, desde um isolamento forte, como hipervisores completos ou contêineres, até o isolamento de peso mais leve, como o processo no nível do sistema operacional e a contenção do sistema de arquivos. Atualmente, o sandboxing local está na extremidade mais leve desse espectro: restringe o que um processo pode ler, gravar e alcançar na rede, mas não executa seus comandos dentro de uma máquina virtual ou contêiner separado. Se você quiser avaliar se esse nível de isolamento atende aos seus requisitos de segurança, consulte o repositório microsoft/mxc para obter detalhes da implementação.

Habilitando o sandboxing local

Para habilitar o sandboxing local dentro de uma CLI do Copilot sessão, execute:

Shell
/sandbox enable

Depois de habilitar o sandboxing local, os comandos e as ferramentas que um agente executa em seu nome – comandos de shell, pesquisa de arquivos e, por padrão, os servidores MCP e idioma (LSP) que a CLI inicia — são executados dentro de uma área restrita no nível do sistema operacional, limitando o acesso deles ao seu sistema. A CLI continua a usar a área restrita local sempre que você usar a CLI no futuro, para uso programático e interativo, até que você execute /sandbox disable para desabilitá-la.

As ferramentas de arquivo internas da CLI — comandos de primeira parte que fazem parte da CLI, em vez de comandos de shell, como sed— são executadas em processo na CLI. Como a CLI em si não está em área restrita, a área restrita do sistema operacional nunca vê as operações de arquivo executadas por essas ferramentas e não pode restringi-las. Em vez disso, as ferramentas internas são codificadas para verificar a política de área restrita em si e respeitar suas configurações configuradas com base no melhor esforço.

Para obter mais informações, consulte Usando área restrita local.

Configurando o sandboxing local

Você pode usar o comportamento de área restrita local padrão ou modificar o que Copilot pode acessar. Ao configurar o sandboxing local, você pode controlar várias dimensões de acesso:

  • Sistema de arquivos: conceda acesso somente leitura ou leitura/gravação a caminhos específicos ou negue caminhos.
  • Rede: permitir ou bloquear o acesso à Internet de saída e o acesso à rede local de forma independente.
  • Credenciais: escolha se suas credenciais git e GitHub CLI (gh) são disponibilizadas dentro da área restrita.
  • Subprocessos: escolha se servidores MCP locais e servidores de idioma também são executados dentro da área restrita. Os servidores MCP remotos nunca são protegidos por área restrita.
  • Conjunto de chaves (macOS): escolha se o conjunto de chaves do sistema pode ser acessado de dentro da área restrita.
  • Exceções por comando: permitir ou impedir que comandos individuais sejam executados fora da área restrita quando precisarem de acesso mais amplo.

Para obter mais informações, consulte Configurando as configurações locais da sandbox.

Suporte multiplataforma.

O sandboxing local está disponível no macOS e no Linux e em builds do Windows Insiders. O comportamento de suporte e isolamento varia de acordo com a plataforma porque cada sistema operacional usa um back-end de isolamento diferente:

  • O macOS usa o back-end do Seatbelt (sandbox-exec).
  • O Linux usa o back-end de bubblewrap, que exige que o bwrap comando seja instalado e disponível em seu PATH. Se /sandbox os relatórios de área restrita não tiverem suporte no Linux, instale o bubblewrap.
  • Windows usa o back-end ProcessContainer.

Como cada plataforma usa um back-end diferente, algumas opções de política se comportam de forma diferente. Mais notavelmente, em Windows a área restrita não pode bloquear caminhos individuais, portanto, todas as regras de caminho negado que você adicionar são ignoradas lá. Em vez de negar um caminho em Windows, conceda acesso apenas aos diretórios específicos necessáriosCopilot, em vez de conceder um diretório amplo e tentar excluir parte dele. Isso mantém um local confidencial fora do alcance da área restrita, mesmo que os caminhos negados não sejam impostos. Os caminhos negados são impostos no macOS e no Linux.

Imposição da política empresarial

Para organizações e empresas, as políticas de área restrita local podem ser configuradas e impostas centralmente usando Microsoft Intune e outras plataformas de MDM (gerenciamento de dispositivo móvel). Isso fornece aos administradores controle sobre como Copilot interage com recursos locais entre dispositivos gerenciados. Consulte a implantação de configurações gerenciadas por MDM.

Isolamento em sandbox na nuvem

O sandboxing de nuvem permite executar CLI do Copilot sessões dentro de ambientes linux totalmente isolados e efêmeros hospedados por GitHub. Cada sessão de área restrita de nuvem é isolada do seu ambiente local e de outras sessões.

O isolamento em nuvem baseia-se em sandboxes do Aplicativos de Contêiner do Azure, com GitHub fornecendo a camada de identidade, política e cobrança.

Observação

Se você passar Copilot por uma organização, o acesso à área restrita de nuvem dependerá de ela estar habilitada nas configurações da organização ou da empresa, em que ela está desabilitada por padrão. Para obter mais informações, consulte Habilitar ou desabilitar áreas restritas de nuvem para sua organização ou empresa.

Iniciando uma sessão de sandbox na nuvem

Para iniciar uma sessão com backup de nuvem, execute o seguinte comando:

Shell
copilot ‑‑cloud ‑‑experimental

Observação

Atualmente, o sandboxing de nuvem é um recurso experimental. Para usá-lo, você deve ter recursos experimentais habilitados para CLI do Copilot— por exemplo, usando a opção de ‑‑experimental linha de comando ao iniciar uma sessão da CLI, conforme mostrado acima.

A ‑‑cloud opção de linha de comando inicia uma sessão interativa CLI do Copilot dentro de uma área restrita de nuvem. Você pode solicitar que Copilot execute tarefas, execute comandos de shell e itere no código, assim como faria em uma sessão local. Os comandos que Copilot executa são executados no ambiente de nuvem, não na sua máquina local.

A execução copilot ‑‑cloud inicia uma única CLI do Copilot sessão em uma área restrita de nuvem. Isso não afeta sessões futuras Copilot . Sempre que quiser executar uma nova sessão em uma área restrita de nuvem, você deve iniciar a CLI com a opção ‑‑cloud .

Observação

O sandboxing na nuvem só está disponível para sessões interativas CLI do Copilot . Você não pode executar a CLI programaticamente em uma área restrita de nuvem, ou seja, não é possível combinar a opção ‑‑cloud com as opções ou -i opções-p.

Continuar sessões entre dispositivos

Como as sessões de sandbox na nuvem são executadas em infraestrutura hospedada por GitHub, você pode retomar uma sessão Copilot em qualquer dispositivo, independentemente de onde ela tenha sido iniciada originalmente. Isso permite fluxos de trabalho mais flexíveis sem a necessidade de copiar arquivos ou reinstalar dependências.

Descarregar fluxos de trabalho com uso intensivo de computação

Você pode executar várias Copilot tarefas em paralelo na nuvem sem consumir recursos locais. Isso mantém o ambiente local leve e responsivo ao dimensionar o trabalho controlado pelo agente.

Governança unificada

As políticas de área restrita de nuvem compartilham a mesma configuração que agente de nuvem Copilot as políticas, estendendo os controles de segurança existentes para a execução em área restrita de nuvem sem configuração adicional.

Ciclo de vida da sessão

Uma sessão de área restrita de nuvem tem três estados principais:

  • Ativo: a sessão está em execução e você está interagindo com ela de CLI do Copilot.
  • Parado: a sessão não está em execução no momento, mas seu estado é salvo. Quando você retomá-lo, seus arquivos, variáveis de ambiente e trabalho em andamento são restaurados.
  • Excluído: a sessão e seu estado salvo são removidos e não podem ser recuperados.

Quando você encerra uma sessão, o sandbox na nuvem cria um snapshot do estado dela para que você possa retomar de onde parou depois. Quando você exclui uma sessão, o ambiente em execução e o instantâneo são removidos.

Autenticação e acesso

O sandboxing usa sua autenticação existente CLI do Copilot . Se você puder entrar CLI do Copilot e ter acesso, Copilotpoderá usar a área restrita. Você não precisa configurar um provedor de nuvem separado, gerenciar chaves de API ou configurar a infraestrutura.

Uma organização ou proprietário da empresa deve habilitar a política de acesso à Área Restrita de Nuvem nas configurações da organização ou da empresa antes que os membros possam usar áreas restritas de nuvem.

Para obter informações sobre como habilitar ou desabilitar áreas restritas de nuvem para membros da sua organização, consulte Habilitar ou desabilitar áreas restritas de nuvem para sua organização ou empresa.

Faturamento

A área restrita local é incluída no assento padrão GitHub Copilot sem custo adicional.

O sandboxing em nuvem é cobrado de acordo com o uso. GitHub mede o uso da sandbox em nuvem em três métricas:

MeterDescriptionUnidadePreço (USD)
ComputaçãoTempo durante o qual uma sessão de sandbox na nuvem está em execução.Computação secundáriaUS$ 0,000024
MemóriaMemória alocada a uma sessão de sandbox na nuvem enquanto está em execução.GiB segundoUS$ 0,000003
ArmazenamentoArmazenamento de instantâneos para sessões interrompidas.Mês do GiBUS$ 0,005

Para obter mais informações sobre como o uso da área restrita de nuvem é medido e cobrado, consulte Cobrança para áreas restritas locais e de nuvem para GitHub Copilot.

Leitura adicional