miércoles, 28 de octubre de 2026

GitHub Copilot estrena identidad para servicios sin depender de credenciales humanas

Las GitHub Apps pueden llamar al SDK con tokens de instalación de una hora. La organización conserva presupuesto, políticas, trazabilidad y revocación.

Un servicio automatizado recibe una credencial temporal de GitHub Copilot separada de la tarjeta de identidad de una persona
Ilustración editorial generada con IA sobre autenticación servidor a servidor de GitHub Copilot; no reproduce un token ni una interfaz real.

GitHub Copilot permite ya que una aplicación o agente use el SDK en nombre de una organización sin tomar prestadas las credenciales de una persona. La autenticación servidor a servidor está en vista previa pública para GitHub Apps instaladas en organizaciones. La mejora resuelve una deuda operativa frecuente: un servicio no debería dejar de funcionar porque una persona cambie de puesto, cierre sesión o pierda acceso.

La organización crea una GitHub App con el permiso de organización Copilot Requests en modo de solo lectura, la instala y genera un token de acceso de instalación. Ese token, con prefijo ghs_, caduca a la hora y se entrega explícitamente al SDK. El consumo se atribuye y factura a la organización propietaria de la instalación.

Actions y un servicio externo no necesitan la misma solución

Dentro de GitHub Actions, la documentación recomienda el GITHUB_TOKEN integrado con el permiso copilot-requests: write. No hace falta crear una GitHub App ni guardar otro secreto. En un servicio de CI externo, un bot o un proceso propio sí corresponde crear la App y renovar su token de instalación antes de que expire.

Escenario Identidad Caducidad y control
GitHub Actions GITHUB_TOKEN del trabajo Vinculado a la ejecución y permisos declarados
Servicio externo Token de instalación de GitHub App Una hora; hay que renovarlo
Usuario interactivo Sesión personal Atribución y permisos de la persona

El cambio no elimina las políticas de modelos, presupuestos ni controles de gasto: se aplican los de la organización. Los informes CSV de uso incluyen app_client_id, lo que permite separar consumo por aplicación. Suspender o desinstalar la App corta su acceso sin revocar la cuenta de ningún empleado.

Una identidad propia mejora la revocación, no la seguridad del agente

El permiso se llama «solo lectura» porque autoriza solicitudes a Copilot, no porque la respuesta del modelo sea inocua. El agente puede después usar otras herramientas con sus propios permisos. Conviene separar al menos tres capas: quién puede pedir inferencias, qué repositorios o datos puede leer el proceso y qué acciones puede ejecutar con el resultado.

La nueva identidad complementa los permisos asistidos de Copilot, pero no los sustituye. Una responde «qué carga de trabajo hace la petición y quién paga»; la otra decide «qué acciones del entorno pueden continuar sin confirmación». Un servicio bien autenticado puede seguir teniendo permisos excesivos.

Lista mínima antes de activar la vista previa

  • Crear una App distinta por servicio o frontera de responsabilidad.
  • Desactivar la búsqueda automática de credenciales personales en el SDK.
  • Renovar el token antes de una hora y tratar un 401 como posible caducidad.
  • Revisar app_client_id y límites de gasto por organización.
  • Documentar cómo suspender la App sin detener otros servicios.

GitHub no publica todavía métricas de disponibilidad, latencia o incidentes de esta vista previa. La evidencia es documentación primaria; la aportación propia consiste en separar identidad, permisos de datos y capacidad de acción para no confundir una credencial de carga de trabajo con un sandbox.

Transparencia: artículo elaborado con asistencia de IA a partir del changelog y la documentación de GitHub. Texploto no creó una App ni ejecutó el SDK.