Skip to main content

Esta versão do GitHub Enterprise Server será descontinuada em 2026-03-17. Nenhum lançamento de patch será feito, mesmo para questões críticas de segurança. Para obter melhor desempenho, segurança aprimorada e novos recursos, atualize para a última versão do GitHub Enterprise Server. Para obter ajuda com a atualização, entre em contato com o suporte do GitHub Enterprise.

Sobre o provisionamento de usuário com SCIM no GitHub Enterprise Server

Saiba mais sobre como gerenciar o ciclo de vida de contas de usuário com SCIM no sua instância do GitHub Enterprise Server.

Observação

O suporte ao SCIM está em beta nesta versão do GitHub Enterprise Server. O suporte ao SCIM está em disponibilidade geral na versão 3.17 e posterior.

Sobre o provisionamento de usuários do GitHub Enterprise Server

Se você usar o SSO (logon único) do SAML para sua instância do GitHub Enterprise Server, poderá configurar o SCIM para criar ou suspender automaticamente as contas de usuário e permitir acesso à instância ao atribuir ou desatribuir o aplicativo no IdP. Para obter mais informações sobre o SCIM, confira Sistema de Gerenciamento de Usuários entre Domínios: protocolo (RFC 7644) no site do IETF.

Se você não configurar o provisionamento de usuários com SCIM, seu IdP não se comunicará com GitHub Enterprise Server automaticamente quando você atribuir ou cancelar a atribuição do aplicativo a um usuário. Sem SCIM, GitHub Enterprise Server cria uma conta de usuário usando o provisionamento SAML Just-in-Time (JIT) na primeira vez que alguém navega para GitHub Enterprise Server e entra autenticando-se por meio de seu IdP.

Para configurar o provisionamento para sua empresa, você deve habilitar o provisionamento em GitHub Enterprise Server, então instalar e configurar um aplicativo de provisionamento em seu IdP ou configurar o provisionamento do SCIM manualmente usando os pontos de extremidade da API REST de GitHub para o SCIM.

Provedores de identidade compatíveis

O GitHub faz parceria com alguns desenvolvedores de sistemas de gerenciamento de identidades para fornecer uma integração simplificada aos ao GitHub Enterprise Server. Para simplificar sua configuração e garantir suporte total, use um único IdP parceiro para autenticação e provisionamento.

Provedores de identidade de parceiros

Os IdPs a seguir são IdPs de parceiros. Eles oferecem um aplicativo que você pode usar para configurar a autenticação SAML e o provisionamento SCIM.

  • ID do Microsoft Entra
  • Okta
  • PingFederate (beta)

Quando você usa um IdP de parceiro único para autenticação e provisionamento, o GitHub fornece suporte para o aplicativo no IdP do parceiro, além da integração do IdP ao GitHub. O suporte para PingFederate está em beta.

Outros sistemas de gerenciamento de identidades

Se você não puder usar um IdP de parceiro para autenticação e provisionamento, poderá usar outro sistema de gerenciamento de identidades ou uma combinação de sistemas. O sistema deverá:

  • Seguir as diretrizes de integração de GitHub
  • Fornecer autenticação usando SAML, atendendo à especificação SAML 2.0
  • Fornecer gerenciamento do ciclo de vida do usuário usando SCIM, atendendo à especificação SCIM 2.0 e comunicando-se com a API REST de GitHub (confiraProvisionar usuários e grupos com SCIM usando a API REST)

Como posso gerenciar os ciclos de vida do usuário com o SCIM?

Com o SCIM, você gerencia o ciclo de vida das contas de usuário do seu IdP:

  • Quando você provisiona um novo usuário, o IdP solicita que o sua instância do GitHub Enterprise Server crie uma conta e envie um email de integração para o usuário. Se você atribuir um grupo ao aplicativo no IdP, o IdP provisionará contas para todos os membros do grupo.
  • Quando você atualiza as informações associadas à identidade de um usuário no IdP, o IdP atualiza a conta do usuário no GitHub.
  • Quando você cancela a atribuição do usuário do aplicativo do IdP ou desativa uma conta de usuário no IdP, o IdP se comunica com o GitHub para invalidar as sessões e desabilitar a conta do membro. As informações da conta desabilitada serão mantidas e o respectivo nome de usuário será alterado para um hash do nome de usuário original.
  • Se você reatribuir um usuário ao aplicativo IdP ou reativar sua conta em seu IdP, a conta de usuário será reativada e o nome de usuário será restaurado.

Para configurar a associação da equipe e da organização, o acesso ao repositório e as permissões, você pode usar grupos no seu IdP. Para saber mais, confira Gerenciando associações de equipes com grupos de provedores de identidade.

Quando o SCIM estiver habilitado, você não poderá mais excluir, suspender nem promover usuários provisionados pelo SCIM diretamente no GitHub Enterprise Server. Você precisa gerenciar esses processos de seu IdP.

Para ver os membros suspensos, navegue até a guia "Suspended Members" das configurações da empresa. Esta página estará presente quando o SCIM estiver habilitado no GitHub Enterprise Server.

  1. No canto superior à direita do GitHub Enterprise Server, clique na sua imagem do perfil e clique em Configurações da empresa.
  2. Clique em Suspended Members.

O que acontece quando eu habilito o SCIM?

Se você usa o SSO SAML e está habilitando o SCIM, precisa estar ciente do que acontece com as contas de usuário existentes no GitHub Enterprise Server quando o SCIM é habilitado.

  • Usuários existentes com mapeamentos SAML não poderão entrar até que suas identidades tenham sido provisionadas pelo SCIM.
  • Usuários existentes criados com a Autenticação interna só poderão entrar se aAutenticação interna ainda estiver habilitada.
  • Quando sua instância recebe uma solicitação do SCIM, é feita a correspondência entre as identidades do SCIM e os usuários existentes, comparando o valor do atributo userName do SCIM com o nome de usuário do GitHub Enterprise Server. Isso significa que uma conta de usuário existente do GitHub Enterprise Server, independentemente de ter sido criada originalmente como uma conta de usuário local ou por meio do provisionamento JIT do SAML, poderá ser convertida em uma conta de usuário vinculada ao SCIM se esses dois valores corresponderem.
    • Se uma conta de usuário com um nome de usuário correspondente existir, o GitHub Enterprise Server vinculará a identidade do SCIM a essa conta de usuário.
    • Se uma conta de usuário com um nome de usuário correspondente não existir, o GitHub Enterprise Server criará uma conta de usuário e a vinculará a essa identidade do SCIM.
  • Se o GitHub fizer com êxito a correspondência de um usuário que está autenticando via SAML com uma conta de usuário existente, mas os detalhes da conta, como endereço de email, nome ou sobrenome, não corresponderem, a instância substituirá os detalhes pelos valores do IdP. Qualquer endereço de email diferente do email principal fornecido pelo SCIM também será excluído da conta do usuário.

O que acontece durante a autenticação SAML?

Depois que um administrador do IdP permite que uma pessoa acesse a sua instância do GitHub Enterprise Server, o usuário pode se autenticar por meio do IdP para acessar o GitHub Enterprise Server usando o SSO de SAML.

  • Quando um usuário se autentica por meio do SAML, para associar um usuário a uma identidade SAML, o GitHub compara uma reivindicação NameID normalizada do IdP (ou outro valor que você configurou) com o nome de usuário da conta. Para obter detalhes sobre a normalização, consulte Considerações de nome de usuário para autenticação externa.
  • Se não houver uma conta com um nome de usuário correspondente na instância, o usuário não fará login.
    • Para fazer essa correspondência, GitHub Enterprise Server compara a declaração SAML NameId do IdP com o atributo userName do SCIM para cada conta de usuário provisionada pelo SCIM na instância.
    • Além disso, para o ID do Entra, o GitHub Enterprise Server compara o identificador de objeto da solicitação SAML com um ID externo existente do SCIM.
  • Se o ambiente não usar NameID para identificar os usuários de forma exclusiva, o administrador do site poderá configurar os atributos de usuário personalizados para a instância. O GitHub Enterprise Server respeitará esse mapeamento quando o SCIM estiver configurado. Para obter mais informações sobre o mapeamento de atributos do usuário, confira Configurar o logon único SAML para sua empresa.

Como o SCIM é desabilitado?

Para obter mais informações sobre as diferentes maneiras como o SCIM pode ser desabilitado, consulte Desabilitar o provisionamento por SCIM para os usuários.

Introdução

Para começar a usar o SCIM, você deverá:

  1. Concluir a configuração inicial, necessária independentemente de qual IdP você usará, em Configurando o provisionamento do SCIM para gerenciar usuários.
  2. Configurar as opções aplicáveis em seu IdP.