Sincronização de equipe

Concluído

Se sua empresa usar a ID do Microsoft Entra ou o Okta como seu provedor de identidade (IdP), você poderá gerenciar a associação de equipe do GitHub por meio da sincronização de equipe. Quando habilitada, a sincronização de equipe reflete automaticamente as alterações em grupos de IdP no GitHub, reduzindo a necessidade de atualizações manuais ou scripts personalizados. Essa abordagem centralizada simplifica a integração, o gerenciamento de permissões e a revogação de acesso.

Característica Descrição
Sincronizar usuários Mantenha o GitHub Teams alinhado com as associações de grupo no IdP (por exemplo, Active Directory)
Sincronizar com Nova Equipe Preencher automaticamente as equipes na criação
Mapeamento de equipe personalizado Usar syncmap.yml para definir mapeamentos personalizados entre campos de dados dinâmicos de equipe e nomes de grupo
Configuração dinâmica Usar um settings arquivo para derivar as configurações de sincronização de sua estrutura de diretório

Casos de uso de sincronização de equipe

A sincronização de equipe é ideal para empresas que buscam simplificar o gerenciamento de associações em organizações do GitHub. Os administradores podem mapear equipes do GitHub para grupos de IdP e gerenciar associações automaticamente. Isso é útil para:

  • Integração de novos funcionários
  • Ajustando o acesso à medida que os usuários se movem entre as equipes
  • Removendo usuários que saem da organização

⚠️ Para usar a sincronização de equipe, o administrador do IdP deve habilitar o SSO e o SCIM do SAML.

Usuários Gerenciados da Empresa e o GitHub Enterprise Server

A sincronização de equipe também está disponível para organizações e contas empresariais que usam o GitHub Enterprise Cloud ou o GitHub Enterprise Server (GHE.com), que é a solução preferencial em regiões em que ela está disponível ou necessária por motivos de conformidade.

As EMUs (Usuários Gerenciados da Empresa) são um recurso do GitHub Enterprise Cloud que fornece às empresas controle total sobre a identidade do usuário e o ciclo de vida da conta. Com as EMUs, as contas do GitHub são totalmente gerenciadas pelo IdP (provedor de identidade) da empresa. Isso significa que os usuários não se inscrevem manualmente no GitHub— todo o provisionamento, o acesso e a integração do usuário são automatizados por meio de ferramentas como a ID do Microsoft Entra ou o Okta.

As EMUs são ideais para organizações com conformidade estrita, auditoria ou necessidades de governança de usuário. Eles ajudam a garantir que:

  • Todas as contas pertencem à empresa
  • O acesso é concedido ou removido automaticamente com base na associação IdP
  • Nenhuma colaboração externa acontece sem querer

Ao usar EMUs:

  • Os usuários gerenciados não podem enviar código por push para ou bifurcar repositórios fora da empresa
  • Eles só podem interagir com outros usuários e recursos dentro da empresa

Você pode gerenciar a organização baseada em EMU e a associação de equipe usando grupos em seu IdP e, opcionalmente, integrar a sincronização de equipe para automatizar o mapeamento de grupo para equipe.

Para organizações com requisitos de hospedagem própria ou regulamentações regionais específicas, o GitHub Enterprise Server (GHE.com) oferece uma solução local que permite manter o controle total do seu ambiente do GitHub.

Para obter mais detalhes, consulte Introdução ao GitHub Enterprise Cloud e ao GitHub Enterprise Server.

Sincronização de equipe versus SCIM para GHES

No GitHub Enterprise Server (GHES), o gerenciamento de acesso do usuário e associações de equipe pode ser feito por meio de vários métodos, incluindo sincronização de equipe e SCIM (System for Cross-domain Identity Management). Entender esses métodos é essencial para uma administração eficaz.

Sincronização de equipe no GHES

A sincronização de equipe permite vincular as equipes do GitHub a grupos no IdP (Provedor de Identidade). Essa integração garante que todas as alterações no grupo IdP, como adicionar ou remover membros, sejam refletidas automaticamente na equipe do GitHub correspondente. Essa abordagem simplifica o gerenciamento de equipe centralizando o controle de acesso do usuário no IdP.

No entanto, é importante observar que a sincronização de equipe não é um serviço de provisionamento de usuários e não convida pessoas que não são membros para ingressar em organizações na maioria dos casos. Portanto, um usuário só será adicionado com êxito a uma equipe se já for membro da organização.

Considere o seguinte cenário para entender como a sincronização de equipe funciona na prática:

  • Quando o grupo "DevOps Engineers" do Azure AD é associado à equipe do GitHub "DevOps"
  • Quando Alice é adicionada ao grupo IdP → adicionada automaticamente à equipe do GitHub
  • Quando ela deixa o grupo → automaticamente removido da equipe

Observação

A Sincronização de Equipe no GHES não provisiona contas. Os usuários já devem ser membros da organização do GitHub.

Habilitar a sincronização de equipe

  1. Habilite o SSO (Logon Único) e o SCIM (Security Assertion Markup Language) no IdP.
  2. Mapeie as equipes do GitHub para grupos de IdP por meio da interface do usuário ou da API do GitHub.
  3. As alterações na associação de grupo são sincronizadas automaticamente para o GitHub.

IdPs com suporte:

  • ID do Microsoft Entra: requer permissões para leitura de perfil e acesso a diretórios.
  • Okta: requer o SSO do SAML, o SCIM, a URL do locatário e o token de logon único para Sistemas Web (SSWS) com acesso de administrador somente leitura.

Desabilitar a sincronização de equipe

Para desabilitar:

  1. Navegue até Configurações>Segurança da organização
  2. Clique em Desabilitar sincronização de equipe

Captura de tela da configuração da organização para desabilitar a sincronização de equipe.

Observação

Desabilitar a sincronização removerá os usuários das equipes se eles forem adicionados por meio do mapeamento IdP.

SCIM no GHES

O SCIM é um protocolo padrão aberto projetado para automatizar a troca de informações de identidade do usuário entre domínios de identidade e sistemas de TI. No contexto do GHES, o SCIM permite que os administradores provisionem, atualizem e desprovisionem contas de usuário diretamente por meio da API do GitHub. Isso significa que você pode criar, atualizar e excluir contas de usuário e sincronizar informações de grupo para mapear associações de equipe do GitHub.

O SCIM é útil para gerenciar ciclos de vida do usuário em escala, garantindo que os dados do usuário permaneçam consistentes entre os sistemas.

Considere o seguinte cenário para entender como o SCIM funciona na prática:

  • A integração do OKta SCIM provisiona automaticamente usuários do GitHub
  • Bob é adicionado ao Okta → conta do GitHub é provisionada
  • Bob altera as funções → acesso e atualização das equipes
  • Bob deixa → conta é desprovisionada

Benefício-chave: Automação completa para gerenciamento do ciclo de vida da conta.

Sincronização de equipe vs. SCIM do grupo

O GitHub dá suporte a duas abordagens de integração de identidade primária:

  • Sincronização de Equipe: focada em sincronizar a associação de grupos às equipes do GitHub
  • GRUPO SCIM: Focado no gerenciamento completo do ciclo de vida de usuários e grupos

Diferenças entre a Sincronização de Equipe e o SCIM de Grupo

Característica Sincronização de Equipe Grupo SCIM
Foco Mapeamento em nível de equipe Provisionamento de usuário e grupo
Configuração Mapeamento manual de grupo para equipe Configuração do SCIM automatizada por meio do IdP
Nível de Automação Sincroniza somente a associação de grupo Automação completa do ciclo de vida
Caso de uso ideal Gerenciamento do GitHub Teams Grandes organizações com alta rotatividade de usuários
Desprovisionamento Dependente de grupo manual ou IdP Totalmente automatizado
Modelo de identidade Clássico Usuários Gerenciados

Escolhendo a abordagem certa

A escolha entre a Sincronização de Equipe e o SCIM de Grupo depende das necessidades, do tamanho e da infraestrutura de gerenciamento de identidade existente da sua organização:

Caso de Uso Solução recomendada
Gerenciar o acesso ao repositório por equipes Sincronização de Equipe
Automatizar o ciclo de vida do usuário Grupo SCIM
Precisa de governança completa baseada em IdP Grupo SCIM
O GitHub Teams é fundamental para o fluxo de trabalho. Sincronização de Equipe

Limites de uso

Ao usar a sincronização de equipe, observe estes limites:

  • Máximo de membros por equipe: 5.000
  • Máximo de membros por organização: 10.000
  • Equipes máximas por organização: 1.500

Exceder isso pode resultar em problemas de desempenho ou falhas de sincronização.