Sincronización de equipos

Completado

Si su empresa usa microsoft Entra ID o Okta como proveedor de identidades (IdP), puede administrar la pertenencia al equipo de GitHub a través de la sincronización de equipos. Cuando está habilitada, la sincronización de equipos refleja automáticamente los cambios en los grupos de IdP en GitHub, lo que reduce la necesidad de actualizaciones manuales o scripts personalizados. Este enfoque centralizado simplifica la incorporación, la administración de permisos y la revocación de acceso.

Característica Descripción
Sync Users (Sincronización de usuarios) Mantener GitHub Teams alineado con la pertenencia a grupos de IdP (por ejemplo, Active Directory)
Sincronización en un nuevo equipo Rellenar automáticamente los equipos en la creación
Asignación de equipo personalizada Use syncmap.yml para definir asignaciones personalizadas entre los slugs de equipo y los nombres de grupo
Dynamic Config (Configuración dinámica) Uso de un settings archivo para derivar la configuración de sincronización de la estructura de directorios

Casos de uso de sincronización de equipos

La sincronización de equipos es ideal para empresas que buscan simplificar la administración de pertenencia en organizaciones de GitHub. Los administradores pueden asignar equipos de GitHub a grupos de IdP y administrar las pertenencias automáticamente. Esto es útil para:

  • Incorporación de nuevos empleados
  • Ajustar el acceso a medida que los usuarios se mueven entre equipos
  • Eliminación de usuarios que abandonan la organización

⚠️ Para usar la sincronización de equipos, el administrador de IdP debe habilitar el inicio de sesión único con SAML y SCIM.

Usuarios gestionados por la empresa y GitHub Enterprise Server

La sincronización de equipos también está disponible para organizaciones y cuentas empresariales que usan GitHub Enterprise Cloud o GitHub Enterprise Server (GHE.com) , que es la solución preferida en las regiones en las que está disponible o es necesaria por motivos de cumplimiento.

Los usuarios administrados por empresas (EMU) son una característica de GitHub Enterprise Cloud que proporciona a las empresas un control completo sobre la identidad de usuario y el ciclo de vida de las cuentas. Con las EMU, las cuentas de GitHub están totalmente administradas por el proveedor de identidades (IdP) de la empresa. Esto significa que los usuarios no se suscriben manualmente a GitHub: todo el aprovisionamiento, el acceso y la retirada de usuarios se automatiza a través de herramientas como Microsoft Entra ID o Okta.

Las EMU son ideales para las organizaciones con estrictas necesidades de cumplimiento, auditoría o gobernanza de usuarios. Ayudan a garantizar que:

  • Todas las cuentas son propiedad de la empresa
  • El acceso se concede o quita automáticamente en función de la pertenencia a IdP
  • No se produce ninguna colaboración externa involuntariamente

Al usar EMU:

  • Los usuarios administrados no pueden empujar código a o bifurcar repositorios fuera de la empresa.
  • Solo pueden interactuar con otros usuarios y recursos dentro de la empresa.

Puede administrar la organización basada en EMU y la pertenencia al equipo mediante grupos en el IdP y, opcionalmente, integrar la sincronización de equipos para automatizar la asignación de grupos a equipos.

En el caso de las organizaciones con requisitos en torno a las normativas regionales específicas o de autohospedaje, GitHub Enterprise Server (GHE.com) ofrece una solución local que le permite mantener el control total del entorno de GitHub.

Para obtener más información, consulte Introducción a GitHub Enterprise Cloud y Acerca de GitHub Enterprise Server.

Sincronización de equipos frente a SCIM para GHES

En GitHub Enterprise Server (GHES), la administración del acceso de los usuarios y las pertenencias a equipos se puede lograr a través de varios métodos, incluida la sincronización de equipos y el sistema para Administración de identidades entre dominios (SCIM). Comprender estos métodos es esencial para una administración eficaz.

Sincronización de equipos en GHES

La sincronización de equipos permite vincular equipos de GitHub con grupos en el proveedor de identidades (IdP). Esta integración garantiza que los cambios en el grupo idP (como agregar o quitar miembros) se reflejen automáticamente en el equipo de GitHub correspondiente. Este enfoque simplifica la administración del equipo mediante la centralización del control de acceso de usuario dentro del IdP.

Sin embargo, es importante tener en cuenta que la sincronización de equipos no es un servicio de aprovisionamiento de usuarios y no invita a los no miembros a unirse a organizaciones en la mayoría de los casos. Por lo tanto, un usuario solo se agregará correctamente a un equipo si ya es miembro de la organización.

Considere el siguiente escenario para comprender cómo funciona la sincronización de equipos en la práctica:

  • Cuando el grupo de Azure AD "DevOps Engineers" se asigna al equipo de GitHub "DevOps"
  • Cuando Alice se agrega al grupo de IdP → agregar automáticamente al equipo de GitHub
  • Cuando ella abandona el grupo, será eliminada automáticamente del equipo.

Nota:

Team Sync en GHES no aprovisiona cuentas. Los usuarios ya deben ser miembros de la organización de GitHub.

Habilitación de la sincronización de equipos

  1. Habilite el Lenguaje de Marcado de Aserciones de Seguridad (SAML) para el Inicio de Sesión Único (SSO) y SCIM en su IdP.
  2. Asigne equipos de GitHub a grupos de IdP a través de la INTERFAZ de usuario o API de GitHub.
  3. Los cambios en la pertenencia a grupos se sincronizan automáticamente con GitHub.

IdPs admitidos:

  • Microsoft Entra ID: requiere permisos para la lectura de perfiles y el acceso a directorios.
  • Okta: Requiere el inicio de sesión único de SAML, SCIM, la dirección URL de inquilino y el token de inicio de sesión único para Web Systems(SSWS) con acceso de administrador de solo lectura.

Deshabilitación de la sincronización de equipos

Para deshabilitar:

  1. Vaya a Configuración>Seguridad de la organización.
  2. Haga clic en Deshabilitar sincronización de equipos.

Captura de pantalla de la configuración de la organización para deshabilitar la sincronización de equipos.

Nota:

Deshabilitar la sincronización quita a los usuarios de los equipos si se agregaron a través de la asignación de IdP.

SCIM en GHES

SCIM es un protocolo estándar abierto diseñado para automatizar el intercambio de información de identidad de usuario entre dominios de identidad y sistemas de TI. En el contexto de GHES, SCIM permite a los administradores aprovisionar, actualizar y desaprovisionar cuentas de usuario directamente a través de la API de GitHub. Esto significa que puede crear, actualizar y eliminar cuentas de usuario, y sincronizar información de grupos para mapear las pertenencias a equipos de GitHub.

SCIM es útil para administrar los ciclos de vida de los usuarios a escala, lo que garantiza que los datos de usuario permanecen coherentes entre sistemas.

Tenga en cuenta el siguiente escenario para comprender cómo funciona SCIM en la práctica:

  • La integración de SCIM de Okta aprovisiona automáticamente a los usuarios de GitHub
  • Bob se agrega a Okta → la cuenta de GitHub es aprovisionada.
  • Bob cambia los roles → acceso y actualizaciones de equipos
  • Bob deja → cuenta está desaprovisionada

Ventaja clave: Automatización completa para la administración del ciclo de vida de las cuentas.

Team Sync frente a Group SCIM

GitHub admite dos enfoques de integración de identidades principales:

  • Team Sync: centrado en la sincronización de la pertenencia a grupos a los equipos de GitHub
  • SCIM de grupo: centrado en la administración completa del ciclo de vida de los usuarios y grupos

Diferencias entre Team Sync y Group SCIM

Característica Team Sync SCIM de grupo
Enfoque Asignación de nivel de equipo Aprovisionamiento de usuarios y grupos
Configuración Mapeo manual de grupos a equipos Automatización mediante la configuración de SCIM de IdP
Nivel de automatización Sincroniza solo la pertenencia a grupos Automatización completa del ciclo de vida
Caso de uso ideal Administración de GitHub Teams Organizaciones grandes con una gran rotación de usuarios
Desaprovisionamiento Dependiente del grupo de IdP o manual Totalmente automatizado
Modelo de identidad Clásico Usuarios administrados

Elección del enfoque correcto

La elección entre Team Sync y Group SCIM depende de las necesidades, el tamaño y la infraestructura de administración de identidades existente de la organización:

Caso de uso Solución recomendada
Administración del acceso al repositorio por parte de los equipos Team Sync
Automatización del ciclo de vida del usuario SCIM de grupo
Necesidad de gobernanza completa basada en IdP SCIM de grupo
GitHub Teams es fundamental para el flujo de trabajo Team Sync

Límites de uso

Al usar la sincronización de equipos, observe estos límites:

  • Número máximo de miembros por equipo: 5000
  • Número máximo de miembros por organización: 10 000
  • Número máximo de equipos por organización: 1500

Superarlos puede dar lugar a problemas de rendimiento o errores de sincronización.