Skip to main content

Configuración de las opciones de red para GitHub Copilot

Puede conectarse a Copilot a través de un proxy HTTP y usar certificados personalizados.

¿Quién puede utilizar esta característica?

GitHub Copilot Individual, GitHub Copilot Business, or GitHub Copilot Enterprise.

Note

GitHub Copilot no está disponible actualmente para su uso con Visual Studio para Mac.

Introducción

De manera predeterminada, GitHub Copilot se conecta al servidor de GitHub directamente desde tu entorno mediante una conexión HTTPS segura. No es necesario configurar opciones de red adicionales para usar Copilot.

Algunas redes usan un servidor proxy HTTP para interceptar el tráfico de Internet antes de enviarlo a la ubicación prevista. Las compañías suelen usar un proxy HTTP para detectar tráfico sospechoso o restringir el contenido que accede a sus redes. Si trabajas en una red corporativa, es posible que tengas que configurar Copilot para que se conecte a través de un proxy HTTP.

Note

El administrador del servidor proxy o servidor de seguridad también debe configurar las opciones de red para que Copilot funcione según lo previsto. Consulta Configuración del servidor proxy o firewall para Copilot.

Establecimiento de la configuración de proxy de GitHub Copilot

GitHub Copilot admite configuraciones básicas de proxy HTTP. Si necesitas llevar a cabo la autenticación en un proxy, GitHub Copilot admite la autenticación básica o la autenticación con Kerberos. Si la dirección URL del proxy comienza por https://, el proxy no se admite por el momento.

Puede configurar un proxy HTTP para GitHub Copilot en el editor que prefiera. Para ver las instrucciones del editor, usa las pestañas de la parte superior de este artículo.

Si no configura un proxy directamente en el editor, GitHub Copilot comprueba si se establece una dirección URL de proxy en cualquiera de las siguientes variables de entorno, enumeradas de mayor a menor prioridad.

  • HTTPS_PROXY
  • https_proxy
  • HTTP_PROXY
  • http_proxy

Note

Puede usar cualquiera de estas variables para almacenar la dirección URL de un proxy HTTP estándar. Durante un uso estándar, las partes http y https de estas variables hacen referencia al tipo de solicitud que se está enviando, no a la dirección URL del proxy en sí. GitHub Copilot no sigue esta convención y usa la dirección URL almacenada en la variable con la prioridad más alta como proxy para las solicitudes HTTP y HTTPS.

Si has configurado un proxy, pero siguen apareciendo errores de conexión, consulta Solución de errores de red para GitHub Copilot.

Configuración de un proxy en un IDE de JetBrains

  1. En el IDE de JetBrains, haz clic en el menú Archivo (Windows) o en el nombre de la aplicación en la barra de menús (macOS) y, a continuación, haz clic en Configuración.

  2. En Apariencia y comportamiento, haz clic en Configuración del sistema y, después, haz clic en Proxy HTTP.

  3. Seleccione Configuración manual del proxy y seleccione HTTP.

  4. En el campo "Nombre de host", escribe el nombre de host del servidor proxy y, en el campo "Número de puerto", el número de puerto del servidor proxy.

  5. Opcionalmente, para configurar Copilot para que omita los errores de certificado, en la barra lateral izquierda, haz clic en Herramientas, en Certificados de servidor y, a continuación, selecciona o anula la selección de Aceptar certificados no de confianza automáticamente.

    Warning

    No se recomienda ignorar los errores de certificado, ya que esto puede generar problemas de seguridad.

Autenticación básica

GitHub Copilot para JetBrains admite la autenticación básica. Para autenticarse, puede seleccionar Autenticación proxy en la página "Configuración manual del proxy" y, a continuación, escribir sus credenciales.

Esto almacena las credenciales como texto no cifrado en la configuración del editor. Como alternativa, puede que prefieras incluir las credenciales en la dirección URL del proxy (por ejemplo: http://USERNAME:PASSWORD@10.203.0.1:5187/) y, después, establecer esta dirección URL como una de las variables de entorno admitidas que se enumeran en Establecimiento de la configuración de proxy de GitHub Copilot.

Configuración de un proxy en Visual Studio Code

  1. En el menú Archivo, ve a Preferencias y haz clic en Configuración.

    Captura de pantalla de la configuración de Visual Studio Code.

  2. En el panel izquierdo de la pestaña de configuración, haz clic en Aplicaciones y, después, selecciona Proxy.

  3. En el cuadro de texto de "Proxy", escribe la dirección del servidor proxy, por ejemplo, http://localhost:3128.

  4. Opcionalmente, para configurar Copilot para omitir los errores de certificado, en "SSL estricta de proxy", activa o anula la selección de la casilla.

    Warning

    No se recomienda ignorar los errores de certificado, ya que esto puede generar problemas de seguridad.

Autenticación básica

GitHub Copilot para VS Code admite la autenticación básica. Para autenticarse, puede incluir las credenciales en la dirección URL del proxy, por ejemplo: http://USERNAME:PASSWORD@10.203.0.1:5187/. Puedes almacenar esta dirección URL en la configuración de VS Code o en una de las variables de entorno enumeradas en Establecimiento de la configuración de proxy de GitHub Copilot.

Configuración de un proxy en Visual Studio

GitHub Copilot para Visual Studio lee la configuración del proxy de Windows. Para obtener información sobre cómo configurar las opciones de proxy en Windows, consulte las instrucciones disponibles en "Para configurar una conexión de servidor proxy manualmente" en Usar un servidor proxy en Windows, en la documentación de Microsoft.

Autenticación básica

GitHub Copilot para Visual Studio no recupera las credenciales de autenticación de la configuración de Windows. Si necesitas autenticarte en un proxy, puedes incluir las credenciales en la dirección URL del proxy (por ejemplo: http://USERNAME:PASSWORD@10.203.0.1:5187/) y establecer esta dirección URL como una de las variables de entorno admitidas que se enumeran en Establecimiento de la configuración del proxy de GitHub Copilot.

Autenticación con Kerberos

Kerberos es un protocolo de autenticación que permite a los usuarios y servicios demostrar su identidad entre sí. Cuando un usuario se autentica correctamente, un servicio de autenticación concede al usuario un vale que les proporciona acceso a un servicio durante un período determinado de tiempo. Es probable que los administradores de red prefieran Kerberos para la autenticación básica, ya que es más seguro y no requiere el envío de credenciales sin cifrar.

GitHub Copilot admite la autenticación en un proxy mediante Kerberos. Para usar Kerberos, debes tener instalada la biblioteca krb5 correspondiente para el sistema operativo instalado en el equipo y un vale activo para el servicio de proxy (ya sea creado manualmente con el comando kinit o mediante otra aplicación). Puede usar el comando klist para comprobar si tiene un vale para el servicio proxy.

Kerberos usa un nombre de entidad de servicio (SPN) a modo de identificador único de una instancia de servicio. De forma predeterminada, el SPN se deriva de la dirección URL del proxy. Por ejemplo, si la dirección URL del proxy es http://proxy.example.com:3128, el SPN será HTTP/proxy.example.com.

Si el SPN predeterminado no es el adecuado para el proxy, puede invalidarlo en VS Code y en los IDE de JetBrains. Actualmente no se puede invalidar el SPN predeterminado en Visual Studio. Sin embargo, puede usar la variable de entorno AGENT_KERBEROS_SERVICE_PRINCIPAL para invalidar el SPN de Visual Studio y los IDE de JetBrains.

Invalidación del SPN predeterminado en VS Code

  1. Abre VS Code Command Palette pulsando Mayús+Comando+P (Mac) o Ctrl+Mayús+P (Windows/Linux).

  2. Escribe settings y, a continuación, haz clic en Preferencias: Abrir configuración de usuario (JSON).

  3. En el objeto JSON, agrega la siguiente propiedad de nivel superior, reemplazando YOUR-SPN por el SPN correcto para el servicio de proxy.

    JSON
    "http.proxyKerberosServicePrincipal": "YOUR-SPN",
    

Invalidación del SPN predeterminado en los IDE de JetBrains

  1. En el IDE de JetBrains, haz clic en el menú Archivo (Windows) o en el nombre de la aplicación en la barra de menús (macOS) y, a continuación, haz clic en Configuración.
  2. En la barra lateral izquierda, haz clic en Lenguajes y marcos y, a continuación, haz clic en GitHub Copilot.
  3. En la sección "Avanzadas", en el campo "Invalidar el nombre de entidad de seguridad de servicio del proxy de Kerberos", escribe el SPN para el servicio de proxy.

Permitir que GitHub Copilot use certificados personalizados

Copilot puede leer certificados SSL personalizados instalados en el equipo de un usuario. Esto permite identificar un servidor proxy como el destinatario previsto de la conexión segura de Copilot para que se pueda inspeccionar el tráfico de red. Sin un certificado personalizado, se puede usar un proxy HTTP para supervisar, enrutar y finalizar la conexión de Copilot, pero no inspeccionar el contenido del tráfico.

Copilot lee los certificados del almacén de confianza del sistema operativo. También lee certificados adicionales del archivo especificado por la variable de entorno estándar de Node.js NODE_EXTRA_CA_CERTS. Para obtener más información, consulta la documentación de Node.js.

Copilot puede leer certificados independientemente de si un proxy está configurado directamente en el equipo de un usuario o no. Esto permite que Copilot admita configuraciones como servidores proxy transparentes o Zscaler.

Instalación de certificados personalizados

Por lo general, si usas equipos de empresa, el departamento de TI de tu compañía ya debe haber instalado los certificados necesarios en el equipo. Si necesitas instalar un certificado, sigue las instrucciones indicadas a continuación.

Warning

La instalación de un certificado personalizado ordena al equipo que confíe en el creador de dicho certificado, lo que podría permitir al creador interceptar todo el tráfico de Internet procedente de tu equipo. Debes tener mucho cuidado y comprobar que vas a instalar el certificado correcto.

Si has instalado un certificado, pero Copilot no lo detecta, consulta Solución de errores de red para GitHub Copilot.