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, confira "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 em GitHub Enterprise Server, confira "Configuring SAML single sign-on for your enterprise." Para aprender como configurar a autenticação e o provisionamento do usuário
para sua instância do GitHub Enterprise Server, confira os artigos para IdPs individuais em "Usar SAML para IAM empresarial".
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 do provisionamento SAML JIT, você pode usar o SCIM para criar ou suspender e conceder ou negar acesso a sua instância do GitHub Enterprise Server automaticamente depois de atribuir ou cancelar a atribuição do aplicativo em seu IdP. O SCIM para GitHub Enterprise Server está atualmente em versão beta privada e sujeito a alterações. Para obter mais informações, confira "Como configurar o provisionamento de usuários na empresa com o SCIM".
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 SAML no site OASIS
- Sistema de Gerenciamento de Usuários entre Domínios: Protocolo (RFC 7644) no site IETF