Skip to main content
Skip to content

Invalidación de la configuración administrada por la empresa para equipos

Evite la configuración excesivamente restrictiva invalidando la configuración predeterminada para equipos específicos.

¿Quién puede utilizar esta característica?

Enterprise owners

Con una implementación administrada por el servidor, puede configurar el archivo de la managed-settings.json empresa para aplicar diferentes opciones de gobernanza a grupos de usuarios en función de su pertenencia al equipo empresarial. La empresa define toda la configuración en un lugar central y la pertenencia al equipo determina qué usuarios reciben un conjunto determinado de valores. Si aún no ha creado el managed-settings.json archivo, consulte Introducción a la configuración administrada por la empresa.

Para que una clave sea apta para las anulaciones de equipo, deberá marcarla como overridable en managed-settings.json. Una clave reemplazable usa el valor del equipo cuando está configurada o, si el equipo la deja sin configurar, recurra al valor predeterminado de su empresa.

Teclas compatibles

{ "overridable": <VALUE> }La sintaxis se aplica a las teclas model, permissions.disableBypassPermissionsMode, permissions.allow, permissions.deny, permissions.ask, allowedMcpServers y deniedMcpServers.

enabledPlugins y extraKnownMarketplaces funcionan aditivamente. La empresa managed-settings.json establece una línea base y un archivo de equipo de empresa puede agregar más complementos y marketplaces sobre él.

Para obtener una descripción completa de estas claves y su sintaxis, consulte Configuración administrada por la empresa.

Anulación de la configuración para equipos específicos

Estas instrucciones se aplican a las implementaciones administradas por el servidor (un managed-settings.json hospedado en GitHub). Otros métodos de implementación no admiten las modificaciones de equipo de empresa, por lo que sería necesario implementar diferentes configuraciones para distintos grupos de usuarios a través de su plataforma MDM.

Utilizará copilot/team-mappings.json y el directorio copilot/teams/ para configurar qué equipos empresariales deben usar configuraciones que difieran de sus valores predeterminados de copilot/managed-settings.json.

Después de completar esta sección, .github-private el repositorio tendrá la siguiente estructura:

  • .github-private/
    • copilot/

managed-settings.json **: { "model": { "overridable": "auto" } } * ** team-mappings.json **: { "no-auto.json": ["special-team"] } * teams/ * ** no-auto.json **: { "model": "unmanaged" }

Steps

  1. En el archivo copilot/managed-settings.json de su empresa, marque cada clave que quiera hacer apta para la sobrescritura mediante la sintaxis { "overridable": <VALUE> }. Los archivos json que asigne a equipos solo pueden enviar valores distintos para las claves que marque como reemplazables.

    El valor de overridable que se proporciona en managed-settings.json es el valor predeterminado cuando los archivos del equipo no declaran un valor diferente para una clave determinada.

    Por ejemplo, para delegar model, disableBypassPermissionsMode y allowedMcpServers a equipos:

    {
      "model": { "overridable": "auto" },
      "permissions": {
        "disableBypassPermissionsMode": { "overridable": "disable" }
      },
      "allowedMcpServers": {
        "overridable": [
          { "serverUrl": "https://mcp.company.com/*" }
        ]
      }
    }
    
  2. En el repositorio .github-private de su empresa, cree copilot/team-mappings.json. Asigne cada archivo de configuración de equipo a uno o varios campos de datos dinámicos del equipo empresarial. La clave es el nombre del archivo de configuración y el valor es una lista de identificadores abreviados de los equipos, por lo que puedes usar un mismo archivo para varios equipos.

    {
      "devs.json": ["developers-all", "finops-dev"],
      "ai-users.json": ["ai-baseline-trained"],
      "frontier.json": ["ai-pioneers"]
    }
    
  3. Cree el archivo de configuración del equipo en copilot/teams/. Puede incluir todas las claves que marcó como reemplazables, además de las claves aditivas enabledPlugins y extraKnownMarketplaces. El resto de las claves siguen rigiéndose por el valor predeterminado de su empresa.

    {
      "model": "unmanaged",
      "permissions": {
        "disableBypassPermissionsMode": "unmanaged"
      },
      "allowedMcpServers": [
        { "serverUrl": "https://team-specific-mcp.company.com/*" }
      ]
    }
    
  4. Confirmación de los cambios en la rama predeterminada.

GitHub evalúa la pertenencia al equipo empresarial y aplica la configuración de coincidencia para cada persona. Si un usuario pertenece a varios equipos, sus archivos de equipo se combinan con el valor menos restrictivo para cada clave y, a continuación, se aplican debajo de la configuración empresarial, donde las decisiones de la plataforma siempre ganan.