Skip to main content

Enterprise Server 3.21 está disponível no momento como versão candidata a lançamento.

Configurar o logon único SAML para sua empresa

Você pode controlar e proteger o acesso a sua instância do GitHub Enterprise Server configuração do SSO (logon único) SAML por meio do IdP (provedor de identidade).

Quem pode usar esse recurso?

Site administrators can configure SAML SSO for a GitHub Enterprise Server instance.

Sobre o SAML SSO

O SSO SAML permite que você gerencie e proteja centralmente o acesso a sua instância do GitHub Enterprise Server a partir do seu IdP SAML.

Se um usuário não autenticado tentar entrar sua instância do GitHub Enterprise Server e você tiver desabilitado a autenticação interna, GitHub redirecionará o usuário para seu IdP SAML para autenticação. Depois que o usuário se autentica com êxito com uma conta no IdP, o IdP redireciona o usuário de volta para sua instância do GitHub Enterprise Server. GitHub valida a resposta do seu IdP e, em seguida, concede acesso ao usuário. A sessão SAML do usuário fica ativa no navegador por 24 horas. Depois disso, 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 saber mais, confira Suspender e cancelar a suspensão de usuários.

Provedores de identidade compatíveis

O GitHub dá suporte ao SSO do SAML, com IdPs que implementam o padrão SAML 2.0. Para obter mais informações, confira o wiki do SAML no site do OASIS.

O GitHub dá suporte oficial e testa internamente os seguintes IdPs para SAML. Para obter mais informações sobre os IdPs com suporte para SCIM no GitHub Enterprise Server, confira Sobre o provisionamento de usuário com o SCIM no GitHub Enterprise Server.

  • 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 a ID do Entra à sua empresa, consulte Tutorial: Microsoft Entra integração do SSO ao GitHub Enterprise Server no Microsoft Docs.

Observação

GitHub não testa nem valida aplicativos da galeria do provedor de identidade (IdP) para uso em ambientes de nuvem governamental, incluindo a Nuvem do Governo do Microsoft Entra ID e a Nuvem do Governo Okta. Problemas de provisionamento de SCIM e autenticação que envolvem aplicativos de galeria nesses ambientes estão fora GitHubdo escopo de suporte.

Considerações de nome de usuário no SAML

O GitHub 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, consulte Considerações de nome de usuário para autenticação externa.

Configurando o SAML SSO

Você pode habilitar ou desabilitar a autenticação SAML para sua instância do GitHub Enterprise Server, ou pode editar uma configuração existente. Você pode exibir e editar as configurações de autenticação no Console de Gerenciamento. Para saber mais, 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 saber mais, confira Configurar uma instância de testes.

  1. Em uma conta administrativa no GitHub Enterprise Server, no canto superior direito de qualquer página, clique em .

  2. Se você ainda não estiver na página "Administração do site", no canto superior esquerdo, clique em Administração do site.

  3. Na barra lateral " Site admin", clique em Console de Gerenciamento.

  4. Na barra lateral "Configurações", clique em Autenticação.

  5. Em "Autenticação", selecione SAML.

  6. 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 saber mais, confira Como permitir a autenticação interna para usuários de fora do seu provedor.

  7. Opcionalmente, para habilitar o SSO de resposta não solicitado, selecione SSO iniciado pelo IdP. Por padrão, GitHub Enterprise Server responderá a uma solicitação iniciada pelo IdP (Provedor de Identidade) não solicitada com um AuthnRequest de volta ao IdP.

    Dica

    Recomendamos manter esse valor desmarcado. Você deve habilitar esse recurso somente na instância rara em que a implementação do SAML não dá suporte ao SSO iniciado pelo provedor de serviços e quando aconselhado por Suporte do GitHub Enterprise.

  8. Opcionalmente, se você não quiser que seu provedor SAML determine os direitos de administrador para os usuários sua instância do GitHub Enterprise Server, selecione Desabilitar rebaixamento/promoção do administrador

  9. Opcionalmente, para permitir o sua instância do GitHub Enterprise Server recebimento de declarações criptografadas do IdP do SAML, selecione Exigir asserçõ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 sua instância do GitHub Enterprise Server para o IdP. Para saber mais, confira Habilitando declarações criptografadas.

  10. No campo URL de logon, 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 estiver disponível apenas em sua rede interna, talvez seja necessário configurar sua instância do GitHub Enterprise Server para usar nameservers internos.

  11. Opcionalmente, no campo Emissor, digite o nome do emissor do SAML. Isso verifica a autenticidade das mensagens enviadas para sua instância do GitHub Enterprise Server.

  12. 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.

  13. Selecione o menu suspenso Formato do Identificador de Nome e clique em um formato.

  14. Em "Verification certificate", clique em Choose File e escolha um certificado para validar as respostas do SAML do IdP.

    Observação

    GitHub não requer a expiração deste certificado IdP SAML. Isso significa que, mesmo que esse certificado expire, a autenticação SAML continuará funcionando. No entanto, se o administrador do seu IdP gerar novamente o certificado SAML e você não atualizá-lo no lado do GitHub, os usuários encontrarão um erro digest mismatch durante as tentativas de autenticação SAML devido à incompatibilidade do certificado. Confira Erro: incompatibilidade de código hash.

  15. Em "Atributos do usuário ", modifique os nomes do atributo SAML para corresponder ao IdP, se necessário, ou aceite os nomes padrão.

Leitura adicional