Sobre o SAML SSO
O SAML SSO permite que você controle centralmente e proteja o acesso ao sua instância do GitHub Enterprise Server a partir do seu IdP SAML. Quando um usuário não autenticado visitar sua instância do GitHub Enterprise Server em um navegador, GitHub Enterprise Server redirecionará o usuário para seu IdP do SAML para efetuar a autenticação. Depois que o usuário efetua a autenticação com sucesso com uma conta no IdP, o usuário do IdP redireciona o usuário de volta para sua instância do GitHub Enterprise Server. GitHub Enterprise Server valida a resposta do seu IdP e, em seguida, concede acesso ao usuário.
Depois que um usuário efetua a autenticação com sucesso no IdP, a sessão do SAML do usuário para sua instância do GitHub Enterprise Server fica ativa no navegador por 24 horas. Depois de 24 horas, o usuário deve efetuar a autenticação novamente com o seu IdP.
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".
Provedores de identidade 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
Para obter mais informações sobre como conectar o Entra ID à sua empresa, confira Tutorial: integração de SSO do Microsoft Entra com GitHub Enterprise Server – conta empresarial no Microsoft Docs.
Considerações de nome de usuário no SAML
O GitHub Enterprise Server normaliza um valor do provedor de autenticação externo para determinar o nome de usuário de cada nova conta pessoal no sua instância do GitHub Enterprise Server. Para obter mais informações, veja "Considerações de nome de usuário para autenticação externa".
Configurando o SAML SSO
Você pode habilitar ou desabilitar a autenticação do SAML para sua instância do GitHub Enterprise Server ou você pode editar uma configuração existente. Você pode ver e editar as configurações de autenticação para GitHub Enterprise Server no Console de Gerenciamento. Para obter mais informações, confira "Administrar sua instância por meio da interface do usuário da Web".
Observação: O GitHub recomenda fortemente que você verifique novas configurações para autenticação em um ambiente de preparo. Uma configuração incorreta pode resultar em tempo de inatividade no sua instância do GitHub Enterprise Server. Para obter mais informações, confira "Configurar uma instância de preparo".
-
Em uma conta administrativa no GitHub Enterprise Server, no canto superior direito de qualquer página, clique em .
-
Se você ainda não estiver na página "Administração do site", no canto superior esquerdo, clique em Administração do site.
-
Na barra lateral " Administrador do site", clique em Console de Gerenciamento .
-
Na barra lateral "Configurações", clique em Autenticação.
-
Em "Autenticação", selecione SAML.
-
Opcionalmente, para permitir que pessoas sem uma conta em seu sistema de autenticação externa entrem com autenticação interna, selecione Permitir autenticação interna. Para obter mais informações, confira "Como permitir a autenticação interna para usuários de fora do seu provedor".
-
Opcionalmente, para habilitar o SSO de resposta não solicitado, selecione SSO iniciado pelo IdP. Por padrão, o GitHub Enterprise Server responderá a uma solicitação iniciada pelo IdP (provedor de identidade) não solicitada com uma
AuthnRequest
.Observação: recomendamos manter esse valor desmarcado. Você só deverá habilitar esse recurso na rara ocasião em que a implementação do SAML não der suporte ao SSO iniciado pelo provedor de serviços e quando recomendado pelo Suporte do GitHub Enterprise.
-
Opcionalmente, se você não quiser que seu provedor SAML determine os direitos de administrador para usuários em sua instância do GitHub Enterprise Server, selecione Desabilitar rebaixamento/promoção de administrador
-
Opcionalmente, para permitir que a sua instância do GitHub Enterprise Server receba declarações criptografadas do IdP do SAML, selecione Exigir declarações criptografadas.
Você deve garantir que seu IdP é compatível com declarações e que a criptografia e os métodos de transporte principais no console de gerenciamento correspondem aos valores configurados no seu IdP. Você também deve fornecer o certificado público de sua instância do GitHub Enterprise Server ao IdP. Para obter mais informações, confira "Habilitando declarações criptografadas".
-
No campo "URL de logon único", digite o ponto de extremidade HTTP ou HTTPS do IdP para solicitações de logon único. Esse valor é fornecido pela configuração do IdP. Se o host só estiver disponível somente na rede interna, talvez seja necessário configurar a sua instância do GitHub Enterprise Server para usar servidores de nomes internos.
-
Opcionalmente, no campo Emissor, digite o nome do emissor do SAML. Fazer isso verifica a autenticidade das mensagens enviadas para sua instância do GitHub Enterprise Server.
-
Selecione os menus suspensos Método de Assinatura e Método de Hash, clique no algoritmo de hash usado pelo emissor do SAML para verificar a integridade das solicitações de sua instância do GitHub Enterprise Server.
-
Selecione o menu suspenso Formato do Identificador de Nome e clique em um formato.
-
Em "Certificado de verificação ", clique em Escolher Arquivo e escolha um certificado para validar as respostas do SAML do IdP.
-
Em "Atributos do usuário ", modifique os nomes do atributo SAML para corresponder ao IdP, se necessário, ou aceite os nomes padrão.