Sobre o SSO SAML para sua instância do GitHub Enterprise Server
O SSO do SAML permite que as pessoas efetuem a autenticação e acessem sua instância do GitHub Enterprise Server por meio de um sistema externo para gerenciamento de identidades.
O SAML é um padrão baseado em XML para autenticação e autorização. Ao configurar o SAML para sua instância do GitHub Enterprise Server, o sistema externo de autenticação é chamado de IdP (provedor de identidade). Sua instância atua como um provedor de serviço (SP) do SAML. Para obter mais informações sobre o padrão SAML, consulte Security Assertion Markup Language na Wikipédia.
Observação: você pode usar SAML ou LDAP, mas não ambos.
Ao usar SAML ou CAS, não há suporte nem gerenciamento para a autenticação de dois fatores na instância do GitHub Enterprise Server, mas há suporte para a autenticação de dois fatores pelo provedor de autenticação externo. A aplicação da autenticação de dois fatores em organizações não está disponível. Para obter mais informações sobre como aplicar autenticação de dois fatores em organizações, confira "Exigindo a autenticação de dois fatores na sua organização".
Depois que você configurar o SAML, as pessoas que usam o sua instância do GitHub Enterprise Server precisarão usar um personal access token para autenticar as solicitações de API. Para obter mais informações, consulte "Gerenciar seus tokens de acesso pessoal".
Se você deseja permitir a autenticação para algumas pessoas que não têm uma conta no seu provedor de autenticação externo, permita a autenticação de fallback para contas locais no sua instância do GitHub Enterprise Server. Para obter mais informações, confira "Como permitir a autenticação interna para usuários de fora do seu provedor".
Para obter mais informações sobre a configuração do SSO do SAML no GitHub Enterprise Server, consulte "Configurar o logon único SAML para sua empresa".
Sobre a criação de contas de usuário
Por padrão, seu IdP não se comunica com GitHub Enterprise Server automaticamente quando você atribuir ou desatribuir o aplicativo. O GitHub Enterprise Server cria uma conta de usuário usando o provisionamento JIT (just-in-time) do SAML na primeira vez em que alguém acessa GitHub Enterprise Server e se conecta autenticando-se por meio do IdP. Talvez seja necessário notificar manualmente os usuários ao permitir acesso ao GitHub Enterprise Server, e é preciso desativar a conta de usuário do GitHub Enterprise Server durante a integração.
Como alternativa, em vez de realizar o provisionamento JIT baseado em SAML, você pode usar o SCIM para criar ou suspender as contas de usuário e realizar a concessão ou negar acesso a sua instância do GitHub Enterprise Serverautomaticamente após atribuir ou desfazer a atribuição do aplicativo no seu IdP. No momento, o SCIM para GitHub Enterprise Server está em versão beta pública e está sujeito a alterações. Para obter mais informações, confira "Sobre o provisionamento de usuários com o SCIM no GitHub Enterprise Server".
Com o provisionamento JIT, se você remover um usuário do IdP, também deverá suspender manualmente a conta do usuário em sua instância do GitHub Enterprise Server. Caso contrário, o proprietário da conta poderá continuar fazendo autenticação usando tokens de acesso ou chaves SSH. Para obter mais informações, confira "Suspender e cancelar a suspensão de usuários".
IdPs compatíveis
GitHub Enterprise Server é compatível com o SAML SSO, com IdPs que implementam o padrão SAML 2.0. Para obter mais informações, confira o wiki do SAML no site do OASIS.
Oficialmente, o GitHub dá suporte aos IdPs a seguir e testa-os internamente.
- Serviços de Federação do Active Directory (AD FS) da Microsoft
- Microsoft Entra ID (anteriormente conhecida como Azure AD)
- Okta
- OneLogin
- PingOne
- Shibboleth
Se oseu IdP oferecer suporte a declarações criptografadas, você poderá configurar asserções criptografadas no GitHub Enterprise Server para aumentar a segurança durante o processo de autenticação.
GitHub Enterprise Server não é compatível com o logout único SAML. Para finalizar uma sessão do SAML ativa, os usuários devem efetuar o logout diretamente no seu IdP do SAML.
Leitura adicional
- "Usar SAML para IAM empresarial"
- Wiki do SAML no site do OASIS
- Sistema de Gerenciamento de Usuários entre Domínios: Protocolo (RFC 7644) no site IETF