Para criar, gerenciar e desativar contas de usuário para membros da empresa no GitHub, o IdP deve implementar o SCIM para comunicação com o GitHub. O SCIM é uma especificação aberta para gerenciamento de identidades de usuários entre sistemas. Diferentes IdPs fornecem experiências diferentes para a configuração do provisionamento do SCIM.
Se você usar um provedor de identidade de parceiro, poderá simplificar a configuração do provisionamento do SCIM usando o aplicativo desse provedor. Se você não usar um provedor de identidade de parceiro para provisionamento, poderá implementar o SCIM usando chamadas para a API REST do GitHub para o SCIM. Para saber mais, confira Sobre os Enterprise Managed Users.
Sobre o gerenciamento do ciclo de vida de usuários com o SCIM
Com o SCIM, você gerencia o ciclo de vida das contas de usuário do seu IdP:
- Depois de configurar o provisionamento para o Enterprise Managed Users, seu IdP usa SCIM para provisionar contas de usuário no GitHub e adicionar as contas à sua empresa. 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 com o código curto acrescentado, se aplicável.
- 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.
Pré-requisitos
Se estiver configurando o provisionamento SCIM para uma nova empresa, certifique-se de concluir todas as etapas anteriores no processo de configuração inicial. Confira Introdução aos Enterprise Managed Users.
Configurando a configuração de provisionamento de usuários para o Enterprise Managed Users
Depois de concluir a configuração no GitHub, você poderá configurar o provisionamento em seu IdP. As instruções que você deve seguir diferem dependendo se você usa um aplicativo de IdP parceiro para autenticação e provisionamento.
-
[Como configurar o provisionamento se você usa um aplicativo de IdP parceiro](#configuring-provisioning-if-you-use-a-partner-idps-application) -
[Como configurar o provisionamento para outros sistemas de gerenciamento de identidades](#configuring-provisioning-for-other-identity-management-systems)
Como configurar o provisionamento se você usa um aplicativo de IdP parceiro
Para usar o aplicativo de IdP de parceiro para autenticação e provisionamento, revise as instruções do parceiro para configurar o provisionamento nos links da tabela a seguir.
| IdP | Método de SSO | Instruções |
|---|---|---|
| Microsoft Entra ID (anteriormente conhecido como Azure AD) | OIDC |
[Tutorial: configurar GitHub OIDC (Enterprise Managed User) para provisionamento automático de usuário](https://docs.microsoft.com/azure/active-directory/saas-apps/github-enterprise-managed-user-oidc-provisioning-tutorial) no Microsoft Learn |
| Entra ID | SAML | Tutorial: configurar GitHub Enterprise Managed User para provisionamento automático de usuário no Microsoft Learn | | Okta | SAML | Configurando a autenticação e o provisionamento do SCIM com Okta | | PingFederate | SAML | As seções “Pré-requisitos” e “2. Configurar as seções do SCIM em Configurar autenticação e provisionamento com PingFederate |
Como configurar o provisionamento para outros sistemas de gerenciamento de identidades
Se você não usa um IdP parceiro, ou usa apenas um IdP parceiro para autenticação SAML, pode gerenciar o ciclo de vida das contas de usuário utilizando os pontos de extremidade da API REST para provisionamento SCIM de GitHub. Confira Provisionar usuários e grupos com SCIM usando a API REST.
Observação
Não há suporte para o uso da API REST para provisionamento SCIM em empresas habilitadas para OIDC.
O GitHub não oferece suporte expresso à mistura de IdPs de parceiros para autenticação e provisionamento e não testa todos os sistemas de gerenciamento de identidades. A equipe de suporte do GitHub talvez não consiga ajudar você em problemas relacionados a sistemas misturados ou não testados. Se você precisar de ajuda, consulte a documentação do sistema, a equipe de suporte ou outros recursos.
Importante
A combinação do Okta e do Entra ID para SSO e SCIM (em qualquer ordem) não tem suporte explicitamente. A API do SCIM do GitHub retornará um erro para o provedor de identidade mediante tentativas de provisionamento se essa combinação estiver configurada.
-
Entre como o usuário de instalação da sua empresa com o nome de usuário SHORTCODE_admin, substituindo SHORTCODE pelo código curto da sua empresa.
Observação
Caso precise redefinir a senha para o usuário de instalação, entre em contato com o Suporte do GitHub por meio do Portal de Suporte do GitHub. A opção usual de redefinição de senha, fornecendo seu email, não funcionará.
-
Navegue até sua empresa. Por exemplo, na página Enterprises em GitHub.com.
-
Na parte superior da página, clique em Provedor de identidade.
-
Em Identity Provider, clique em Single sign-on configuration.
-
Em "Abrir configuração do SCIM", selecione "Habilitar configuração aberta do SCIM".
-
Gerencie o ciclo de vida dos usuários fazendo chamadas para os pontos de extremidade da API REST para provisionamento do SCIM. Confira Provisionar usuários e grupos com SCIM usando a API REST.
Atribuindo usuários e grupos
Depois de configurar a autenticação e o provisionamento, você poderá provisionar novos usuários no GitHub ao atribuir usuários ou grupos ao GitHub Enterprise Managed User aplicativo.
Ao atribuir aos usuários, você poderá usar o atributo "Funções" no aplicativo em seu IdP para definir a função de um usuário na empresa. Para saber mais sobre as funções disponíveis para atribuição, confira Habilidades de funções em uma empresa.
O Entra ID não dá suporte ao provisionamento de grupos aninhados. Para obter mais informações, consulte Como o Provisionamento de Aplicativos funciona no Microsoft Entra ID no Microsoft Learn.