Skip to main content

Configurando configurações gerenciadas pela empresa

Defina as configurações gerenciadas pela empresa para controlar Copilot centralmente o comportamento do cliente em sua empresa usando implantação gerenciada por servidor, gerenciada por MDM ou baseada em arquivo.

Quem pode usar esse recurso?

Enterprise owners

Com as configurações gerenciadas pela empresa, os proprietários corporativos podem definir e distribuir centralmente as configurações de configuração para clientes compatíveis com os usuários no plano da Copilot sua empresa, garantindo que todos os membros funcionem dentro dos guardrails que você definir, permitindo que as equipes adaptem as configurações que você permite.

Há suporte para os seguintes clientes, embora nem todos os clientes ofereçam suporte a todas as propriedades:

  • CLI do Copilot
  • VS Code
  • O aplicativo GitHub Copilot
  • agente de nuvem Copilot

Essas configurações se aplicam a toda a empresa e as empresas podem personalizar chaves específicas para equipes empresariais. Para a maioria das chaves com suporte, o managed-settings.json valor tem precedência sobre qualquer configuração baseada em arquivo que um usuário define em seu cliente. Em CLI do Copilot, as configurações gerenciadas sandbox , em vez disso, definem restrições mínimas que os usuários podem apertar ainda mais, mas não podem se soltar.

As configurações gerenciadas por MDM e baseadas em arquivo são carregadas do dispositivo, para que possam ser aplicadas antes de entrar ou uma viagem de ida e volta do servidor e permanecer ativas quando os usuários alternarem de conta. As configurações gerenciadas pelo servidor estão associadas à conta de entrada do usuário.

Definindo configurações

Para obter informações detalhadas sobre as propriedades e a sintaxe disponíveis, consulte Configurações gerenciadas pela empresa.

Use copilot/team-mappings.json e o copilot/Equipes/ diretório quando você precisar de uma ou mais equipes empresariais para usar configurações diferentes dos padrões em copilot/managed-settings.json. Para obter mais informações, consulte Configurando configurações gerenciadas pela empresa.

Escolhendo um método de implantação

Há várias maneiras de implantar configurações gerenciadas pela empresa. Use as diretrizes a seguir para escolher o método certo para você. Para qualquer método, faça um piloto com um pequeno grupo de dispositivos antes da implantação em grande escala.

  • Gerenciado pelo servidor: padrão para a maioria das empresas e o melhor para examinar fluxos de trabalho e histórico de auditoria. Aplica-se a todos os clientes, incluindo agente de nuvem Copilot.
  • Gerenciado por MDM: melhor quando as equipes de TI precisam de direcionamento de grupo de dispositivos por meio de ferramentas MDM existentes no macOS e Windows. Somente clientes locais.
  • Baseado em arquivo: disponível em todas as plataformas e útil quando a implantação gerenciada por servidor e gerenciada por MDM não estão disponíveis, incluindo ambientes de desenvolvedor, como contêineres e Codespaces. Somente clientes locais.

In CLI do Copilot, if a request for server-managed settings fail and no cache response is available, the server-managed policy is unavailable for that session. Para restrições que devem permanecer disponíveis sem uma resposta de servidor, use configurações gerenciadas por MDM ou baseadas em arquivo.

Há considerações adicionais se você usar uma empresa dedicada para Copilot Business. Consulte Diretrizes para empresas dedicadasCopilot Business.

Implantando configurações gerenciadas pelo servidor

  1. Crie e configure seu .github-private repositório. Consulte Criando um .github-private repositório.
  2. No repositório, crie ou atualize copilot/managed-settings.json.
  3. Adicione suas chaves e valores de política empresarial no formato JSON.
  4. Confirme e efetue push das suas alterações para a ramificação padrão.
  5. Confirme se os usuários corporativos estão executando um cliente com suporte. As configurações atualizadas são aplicadas automaticamente dentro de cerca de uma hora. Reiniciar o cliente ou entrar novamente dispara uma atualização imediata.

Substituindo configurações para equipes específicas

Para implantações gerenciadas por servidor, use copilot/team-mappings.json e o copilot/Equipes/ diretório quando uma ou mais equipes empresariais devem usar configurações diferentes dos valores padrão copilot/managed-settings.json . enabledPlugins e extraKnownMarketplaces trabalhe de forma aditiva. A empresa managed-settings.json define uma linha de base e um arquivo de equipe empresarial pode adicionar mais plug-ins e marketplaces sobre ele.

  1. No arquivo da copilot/managed-settings.json sua empresa, marque cada chave que você deseja tornar qualificada para substituição usando a { "overridable": <VALUE> } sintaxe. Os json arquivos mapeados para as equipes só podem enviar valores diferentes para chaves que você marcar substituíveis. Um overridable valor que você fornece managed-settings.json é o padrão quando os arquivos do Teams não declaram um valor diferente para uma determinada chave. Por exemplo, para adiar ambos model e disableBypassPermissionsMode:

    {
      "model": { "overridable": "auto" },
      "permissions": {
        "disableBypassPermissionsMode": { "overridable": "disable" }
      },
      "allowedMcpServers": {
        "overridable": [
          { "serverUrl": "https://mcp.company.com/*" }
        ]
      }
    }
    
  2. No repositório da .github-private sua empresa, crie copilot/team-mappings.json. Mapeie cada arquivo de configurações de equipe para uma ou mais lesmas da equipe empresarial. A chave é o nome do arquivo de configurações e o valor é uma matriz de lesmas de equipe, para que você possa aplicar um arquivo em várias equipes.

    {
      "devs.json": ["developers-all", "finops-dev"],
      "ai-users.json": ["ai-baseline-trained"],
      "frontier.json": ["ai-pioneers"]
    }
    
  3. Crie o arquivo de configurações da equipe em copilot/Equipes/. Inclua apenas as chaves que você marcou como substituíveis. Todas as outras chaves permanecem governadas por padrão da sua empresa.

    {
      "model": "unmanaged",
      "permissions": {
        "disableBypassPermissionsMode": "unmanaged"
      },
      "allowedMcpServers": [
        { "serverUrl": "https://team-specific-mcp.company.com/*" }
      ]
    }
    
  4. Confirme e efetue push das suas alterações para a ramificação padrão.

GitHub avalia a associação da equipe corporativa e aplica as configurações de correspondência para cada pessoa. Se um usuário pertence a várias equipes, seus arquivos de equipe são combinados usando o valor menos restritivo para cada chave e, em seguida, aplicados abaixo das configurações da empresa, em que as decisões da plataforma sempre ganham.

Implantando configurações gerenciadas por MDM

A entrega de MDM nativo usa as mesmas chaves lógicas e valores que as configurações gerenciadas pelo servidor, mas não implanta um managed-settings.json arquivo. Em vez disso, sua plataforma MDM implanta configurações individuais como valores de cadeia de caracteres gerenciados pelo sistema operacional.

A entrega nativa de MDM está disponível no Windows e no macOS:

Sistema operacionalLocal da política nativa
WindowsValores de cadeia de caracteres (REG_SZ) em HKEY_LOCAL_MACHINE\SOFTWARE\Policies\GitHubCopilot
macOSValores de cadeia de caracteres em preferências gerenciadas forçadas para o com.github.copilot domínio de preferência
LinuxNão há suporte para entrega de MDM nativo. Em vez disso, use configurações baseadas em arquivo.

Todos os valores MDM nativos devem ser cadeias de caracteres. Para configurações aninhadas, use uma chave separada por ponto, como permissions.disableBypassPermissionsMode ou sandbox.enabled. Armazene valores de cadeia de caracteres comuns diretamente. Armazene boolianos, matrizes e objetos como texto JSON dentro de um valor de cadeia de caracteres.

Por exemplo:

KeyValor da cadeia de caracteres nativa
permissions.disableBypassPermissionsModedisable
sandbox.enabledtrue
enabledPlugins{"PLUGIN-NAME@MARKETPLACE-NAME":true}
  1. Escolha as configurações que você deseja impor. Consulte Configurações gerenciadas pela empresa.

  2. Converta cada configuração para a representação de valor de cadeia de caracteres e chave nativa.

  3. Implante as configurações no local da política nativa usando a plataforma MDM corporativa e o processo de distribuição padrão.

  4. Atribua a política aos grupos de dispositivos de destino.

    Os clientes não precisam reiniciar e verificar se há políticas atualizadas por hora. Em VS Code, um administrador pode forçar uma verificação de teste executando o Developer: Sync Account Policy comando.

  5. Confirme se as configurações tiveram efeito. Consulte Verificar se a configuração foi aplicada.

Implantando configurações baseadas em arquivo

Coloque managed-settings.json no seguinte local:

Sistema operacionalLocal do arquivo
macOS/Library/Application Support/GitHubCopilot/managed-settings.json
Windows%ProgramFiles%\GitHubCopilot\managed-settings.json
Linux/etc/github-copilot/managed-settings.json
  1. Crie ou atualize um managed-settings.json arquivo com as chaves de política e os valores que você deseja impor.
  2. Distribua o arquivo para o local específico da plataforma usando o processo de gerenciamento de dispositivo padrão. Os computadores que não recebem o arquivo não são restritos por essa política.
  3. Para CLI do Copilot macOS e Linux, torne o arquivo um arquivo regular de propriedade e verifique se ele não é gravável em rootgrupo ou gravável no mundo. Não use um link simbólico. A CLI rejeita arquivos que não atendem a esses requisitos.
  4. Peça aos usuários que reiniciem clientes com suporte para que a política atualizada seja carregada na inicialização.
  5. Confirme se as configurações tiveram efeito. Consulte Verificar se a configuração foi aplicada.

Verificar se a configuração foi aplicada

Para implantações gerenciadas pelo servidor, os usuários em um cliente com suporte veem as configurações especificadas em cerca de uma hora. Isso inclui copilot/managed-settings.json, copilot/team-mappings.jsone arquivos em copilot/Equipes/. Reiniciar o cliente ou entrar novamente dispara uma atualização imediata.

Para implantações gerenciadas por MDM, os clientes verificam se há políticas atualizadas por hora. Para implantações baseadas em arquivo, reinicie o cliente para carregar um arquivo atualizado.

Se um usuário não vir essas configurações, verifique se ele recebe acesso a Copilot por meio da sua empresa ou de uma de suas organizações. Se um usuário receber uma licença de múltiplas entidades de cobrança, verifique se ele selecionou sua empresa na lista suspensa "Uso cobrado para" nas configurações pessoais Copilot.

Orientações para empresas Copilot Business dedicadas

Se você tiver uma empresa dedicada para Copilot Business (às vezes chamada Copilot de Autônoma), ainda poderá usar as configurações gerenciadas pela empresa. O método de implantação escolhido determina o que você precisa configurar primeiro.

Usando configurações gerenciadas pelo servidor

As configurações gerenciadas pelo servidor exigem uma organização e um .github-private repositório. Para criá-los, um usuário em sua empresa precisa de uma GitHub Enterprise licença. Com essa licença, o usuário pode:

  1. Crie uma organização e um .github-private repositório. Consulte Criando um .github-private repositório.
  2. Adicione configurações ao repositório em um copilot/managed-settings.json arquivo.
  3. Defina essa organização como a fonte de governança para os padrões de IA da sua empresa. Consulte Criando um .github-private repositório.

A partir desse momento, qualquer usuário do plano Copilot da sua empresa que use CLI do Copilot ou VS Code está sujeito a essas configurações, independentemente de ter acesso ou não ao repositório .github-private.

A principal limitação desse método é o GitHub Enterprise requisito de licença para criar a organização e o repositório.

Usando configurações gerenciadas por MDM ou baseadas em arquivo

Se você não quiser adicionar uma GitHub Enterprise licença ou criar uma organização, poderá implantar as mesmas configurações lógicas por meio do MDM (como o Intune ou o Jamf) ou de uma implantação baseada em arquivo. A entrega baseada em arquivo usa o esquema JSON diretamente. A entrega de MDM nativo usa chaves simples e valores codificados em cadeia de caracteres. Nenhum dos métodos requer uma organização ou .github-private repositório. Consulte a implantação de configurações gerenciadas por MDM e a implantação de configurações baseadas em arquivo. Para orientações específicas para VS Code, consulte Implantar configurações gerenciadas do Copilot na documentação do VS Code.

Considerações sobre acesso ao plug-in

Os usuários não precisam de acesso ao repositório .github-private para que os clientes obtenham as configurações gerenciadas. No entanto, se as configurações gerenciadas definirem um plug-in usando enabledPlugins, o cliente tentará instalá-lo automaticamente para cada usuário. O usuário precisa de acesso ao local em que os arquivos de plug-in estão hospedados. Se o plug-in estiver hospedado em um repositório privado em GitHub, o usuário precisa ter autorização de acesso a esse repositório, o que pode exigir uma licença.