Skip to main content

Personalización o deshabilitación del firewall para el agente en la nube de GitHub Copilot

Obtenga información sobre cómo controlar los dominios y direcciones URL a los que agente en la nube de Copilot puede acceder.

Nota:

La configuración del firewall se ha movido a la agente en la nube de Copilot página de configuración. Las configuraciones anteriores guardadas como variables de Actions se mantendrán en esa página.

Visión general

De forma predeterminada, Copilotel acceso a Internet está limitado por un firewall.

Limitar el acceso a Internet ayuda a administrar los riesgos de filtración de datos. Un comportamiento inesperado de Copilot, o instrucciones malintencionadas, podría provocar que el código u otra información confidencial se filtren a ubicaciones remotas.

El firewall siempre permite el acceso a una serie de hosts que Copilot usa para interactuar con GitHub. De forma predeterminada, también se habilita una lista de permitidos recomendada para permitir que el agente descargue las dependencias.

Si Copilot intenta realizar una solicitud bloqueada por el firewall, se agrega una advertencia al cuerpo de la solicitud de incorporación de cambios (para las nuevas solicitudes de incorporación de cambios) o a un comentario (para las solicitudes de incorporación de cambios existentes). La advertencia muestra la dirección bloqueada y el comando que intentó realizar la solicitud.

Captura de pantalla de una advertencia de Copilot acerca de que está bloqueado por el firewall.

Limitaciones

El firewall del agente tiene limitaciones importantes que afectan a su cobertura de seguridad.

  • Solo se aplica a los procesos iniciados por el agente: el firewall solo se aplica a los procesos iniciados por el agente a través de su herramienta Bash. No se aplica a los servidores o procesos del Protocolo de Contexto de Modelo (MCP) iniciados en los pasos de configuración especificados Copilot.
  • Solo se aplica dentro del GitHub Actions dispositivo: el firewall solo funciona en el entorno del GitHub Actions dispositivo. No se aplica a los procesos que se ejecutan fuera de este entorno.
  • Potencial evasión: los ataques sofisticados pueden evadir el cortafuegos, lo que podría permitir el acceso no autorizado a la red y la exfiltración de datos.

Estas limitaciones significan que el firewall proporciona protección para escenarios comunes, pero no debe considerarse una solución de seguridad completa.

La lista de permitidos recomendada, habilitada de forma predeterminada, permite el acceso a:

  • Repositorios de paquetes de sistema operativo comunes (por ejemplo, Debian, Ubuntu, Red Hat).
  • Registros de contenedor comunes (por ejemplo, Docker Hub, Azure Container Registry, AWS Elastic Container Registry).
  • Empaqueta registros usados por lenguajes de programación populares (C#, Docker, Go, Haskell, Java, JavaScript, Perl, PHP, Python, Ruby, Rust y Swift).
  • Entidades de certificación comunes (para permitir la validación de certificados SSL).
  • Hosts utilizados para descargar navegadores web para el servidor MCP de Playwright.

Para obtener la lista completa de hosts incluidos en la lista de permitidos recomendada, consulte Referencia de la lista de permitidos de Copilot.

Configuración del firewall en el nivel de organización

Los propietarios de la organización pueden configurar todas las opciones de firewall en el nivel de organización. Para acceder a la configuración del firewall:

  1. En la esquina superior derecha de GitHub, haz clic en la foto del perfil y luego en Your organizations.

  2. Seleccione una organización haciendo clic en ella.

  3. Debajo del nombre de la organización, haz clic en Settings. Si no puedes ver la pestaña "Configuración", selecciona el menú desplegable y, a continuación, haz clic en Configuración.

    Captura de pantalla de las pestañas en el perfil de una organización. La pestaña "Configuración" se destaca en naranja oscuro.

  4. En la barra lateral, en "Código, planeación y automatización", haga clic en Copilot y, a continuación, haga clic en Agente en la nube.

Habilitación o deshabilitación del firewall

Advertencia

Deshabilitar el firewall permitirá Copilot conectarse a cualquier host, lo que aumenta los riesgos de filtración del código u otra información confidencial.

  1. En "Acceso a Internet", establezca la opción Habilitar firewall en Habilitado, Deshabilitado o Permitir que los repositorios decidan (valor predeterminado).
  1. En "Acceso a Internet", establezca la opción De la lista de permitidos recomendada en Habilitado, Deshabilitado o Permitir que los repositorios decidan (valor predeterminado).

Controlar si los repositorios pueden agregar reglas personalizadas de listas de permitidos

De forma predeterminada, los administradores del repositorio pueden agregar sus propias entradas a la lista de permitidos del firewall. Los propietarios de la organización pueden deshabilitarlo para evitar que los repositorios agreguen reglas personalizadas.

  1. En "Acceso a Internet", establezca la opción Permitir reglas personalizadas del repositorio en Habilitado (valor predeterminado) o Deshabilitado.

Administración de la lista de permitidos personalizada de la organización

Los elementos agregados a la lista de permitidos personalizada de la organización se aplican a todos los repositorios de la organización. Estos elementos no se pueden eliminar en el nivel de repositorio. Las reglas de nivel de organización y de nivel de repositorio se combinan.

  1. En "Acceso a Internet", haga clic en Lista de permitidos personalizada de la organización.

  2. Agrega las direcciones que deseas incluir en la lista de permitidos. Puedes incluir:

    • Dominios (por ejemplo, packages.contoso.corp). El tráfico estará permitido hacia el dominio especificado y cualquier subdominio.

           **Ejemplo**: `packages.contoso.corp` permitirá el tráfico a `packages.contoso.corp` y `prod.packages.contoso.corp`, pero no a `artifacts.contoso.corp`.
      
    • URLs (por ejemplo, https://packages.contoso.corp/project-1/). Solo se permitirá el tráfico en el esquema especificado (https) y host (packages.contoso.corp) y limitado a la ruta de acceso especificada y las rutas de acceso descendientes.

           **Ejemplo**: `https://packages.contoso.corp/project-1/` permitirá el tráfico a `https://packages.contoso.corp/project-1/` y `https://packages.contoso.corp/project-1/tags/latest`, pero no a `https://packages.contoso.corp/project-2`, `ftp://packages.contoso.corp` o `https://artifacts.contoso.corp`.
      
  3. Haga clic en Agregar regla.

  4. Después de validar la lista, haz clic en Save changes.

Configuración del firewall en el nivel de repositorio

Los administradores del repositorio pueden configurar las opciones de firewall en el nivel de repositorio, incluida la habilitación o deshabilitación del firewall, la habilitación o deshabilitación de la lista de permitidos recomendada y la administración de una lista de permitidos personalizada. En función de la configuración de nivel de organización, es posible que algunas de estas opciones estén bloqueadas.

Para acceder a la configuración del firewall:

  1. En GitHub, navegue hasta la página principal del repositorio.

  2. Debajo del nombre del repositorio, haz clic en Settings. Si no puedes ver la pestaña "Configuración", selecciona el menú desplegable y, a continuación, haz clic en Configuración.

    Captura de pantalla de un encabezado de repositorio en el que se muestran las pestañas. La pestaña "Configuración" está resaltada con un contorno naranja oscuro.

  3. En la sección "Código y automatización" de la barra lateral, haga clic en Copilot .agente de nube

Habilitación o deshabilitación del firewall

Nota:

Solo puede cambiar esta configuración en el nivel de repositorio si la configuración habilitar firewall de nivel de organización está establecida en Permitir que los repositorios decidan. Si la configuración de nivel de organización es Habilitada o Deshabilitada, no puede cambiar esta configuración para repositorios individuales.

  1. Active o desactive la opción Habilitar firewall .

Nota:

Solo puede cambiar esta configuración en el nivel de repositorio si la configuración de lista de permitidos recomendada de nivel de organización está establecida en Permitir que los repositorios decidan. Si la configuración de nivel de organización es Habilitada o Deshabilitada, no puede cambiar esta configuración para repositorios individuales.

  1. Active o desactive la opción lista de permitidos recomendada.

Administración de la lista de permitidos personalizada

Nota:

Solo puede agregar reglas personalizadas de listas de permitidos en el nivel de repositorio si la configuración Permitir reglas personalizadas del repositorio de nivel de organización está establecida en Habilitado. Para obtener más información, consulte Controlar si los repositorios pueden agregar reglas personalizadas de listas de autorización.

  1. Haga clic en Lista de permitidos personalizada.

  2. Agrega las direcciones que deseas incluir en la lista de permitidos. Puedes incluir:

    • Dominios (por ejemplo, packages.contoso.corp). El tráfico estará permitido hacia el dominio especificado y cualquier subdominio.

           **Ejemplo**: `packages.contoso.corp` permitirá el tráfico a `packages.contoso.corp` y `prod.packages.contoso.corp`, pero no a `artifacts.contoso.corp`.
      
    • URLs (por ejemplo, https://packages.contoso.corp/project-1/). Solo se permitirá el tráfico en el esquema especificado (https) y host (packages.contoso.corp) y limitado a la ruta de acceso especificada y las rutas de acceso descendientes.

           **Ejemplo**: `https://packages.contoso.corp/project-1/` permitirá el tráfico a `https://packages.contoso.corp/project-1/` y `https://packages.contoso.corp/project-1/tags/latest`, pero no a `https://packages.contoso.corp/project-2`, `ftp://packages.contoso.corp` o `https://artifacts.contoso.corp`.
      
  3. Haga clic en Agregar regla.

  4. Después de validar la lista, haz clic en Save changes.

Lectura adicional