Skip to main content
Publicamos atualizações frequentes em nossa documentação, e a tradução desta página ainda pode estar em andamento. Para obter as informações mais recentes, acesse a documentação em inglês. Se houver problemas com a tradução desta página, entre em contato conosco.

Autenticação SAML

Se você usar o logon único SAML (SSO) e as pessoas não conseguirem efetuar a autenticação para acessar your GitHub Enterprise Server instance, você poderá solucionar o problema.

Sobre problemas com autenticação do SAML

Mensagens de erro de registro de GitHub Enterprise Server para autenticação do SAML falhada no registro de autenticação em /var/log/github/auth.log. Você pode revisar as respostas neste arquivo de log, e você também pode configurar mais logs detalhados.

Para obter mais informações sobre requisitos de resposta do SAML, consulte "Referência de configuração do SAML".

Configurando a depuração do SAML

Você pode configurar GitHub Enterprise Server para escrever registros de depuração detalhados em /var/log/github/auth.log para cada tentativa de autenticação do SAML. É possível que você possa solucionar problemas com tentativas de autenticação com esta saída extra.

Avisos:

  • Habilite apenas a depuração do SAML temporariamente e desabilite a depuração imediatamente após terminar a solução de problemas. Se você deixar a depuração habilitada, o tamanho do seu registro poderá aumentar muito mais rápido do que o normal, o que pode impactar negativamente o desempenho de GitHub Enterprise Server.
  • Teste novas configurações de autenticação para your GitHub Enterprise Server instance em um ambiente de teste antes de aplicar as configurações no seu ambiente de produção. Para obter mais informações, consulte "Configurar instância de preparo".
  1. No canto superior direito de GitHub Enterprise Server, clique na sua foto de perfil e, em seguida, clique em Configurações da empresa. "Configurações da empresa" no menu suspenso para foto do perfil em GitHub Enterprise Server

  2. Na barra lateral da conta corporativa, clique em Policies. Aba de políticas na barra lateral da conta corporativa

  3. Em Políticas, clique em Opções. Aba Opções na barra lateral de configurações da conta corporativa

  4. Em "Depuração do SAML", selecione o menu suspenso e clique em Habilitado.

    Captura de tela da lista suspensa para habilitar a depuração do SAML

  5. Tentar efetuar o login no your GitHub Enterprise Server instance por meio do IdP do seu SAML.

  6. Revise a saída de depuração em /var/log/github/auth.log em your GitHub Enterprise Server instance.

  7. Quando você estiver solucionando problemas, selecione o menu suspenso e clique em Desabilitado.

    Captura de tela da lista suspensa para desaabilitar a depuração do SAML

Decodificando respostas em auth.log

Alguma saída em auth.log pode ser codificada em Base64. Você pode acessar o shell administrativo e usar o utilitário base64 em your GitHub Enterprise Server instance para decodificar essas respostas. Para obter mais informações, consulte "Acessar o shell administrativo (SSH)".

$ base64 --decode ENCODED OUTPUT

Erro: "Outro usuário já possui a conta"

Quando um usuário efetua o login em your GitHub Enterprise Server instance pela primeira vez com autenticação do SAML, GitHub Enterprise Server cria uma conta de usuário na instância e mapeia o NameID do SAML com a conta.

Quando o usuário inicia a sessão novamente, GitHub Enterprise Server compara o mapeamento do NameID da conta com a resposta do IdP. Se o NameID na resposta do IdP não corresponder mais ao NameID que GitHub Enterprise Server espera para o usuário. ocorrerá uma falha no login. O usuário receberá a seguinte mensagem.

Outro usuário já possui a conta. Solicite ao administrador que verifique o registro de autenticação.

De modo geral, a mensagem indica que o nome de usuário ou endereço de email da pessoa foi alterado no IdP. Certifique-se de que o mapeamento do NameID para a conta do usuário no GitHub Enterprise Server corresponde ao NameID do usuário no seu IdP. Para obter mais informações, consulte "Atualizando NameID do SAML de um usuário."

Se a resposta SAML não estiver assinada ou se a assinatura não corresponder ao conteúdo, o log de autenticação mostrará a seguinte mensagem de erro:

Se o Destinatário não coincidir com o URL do ACS para your GitHub Enterprise Server instance, uma das seguintes duas mensagens de erro aparecerá no registro de autenticação quando um usuário tentar efetuar a autenticação.

Recipient na resposta SAML não pode ficar em branco.
Recipient na resposta SAML não era válido.

Certifique-se de definir o valor para Destinatário no seu IdP para o URL doACS completo para your GitHub Enterprise Server instance. Por exemplo, https://ghe.corp.example.com/saml/consume.

Erro: "Resposta do SAML não foi assinada ou foi modificada"

Se seu IdP não assinar a resposta do SAML ou a assinatura não corresponder ao conteúdo, será exibida a seguinte mensagem de erro no registro de autenticação.

Resposta SAML não assinada ou modificada.

Certifique-se de que você configurou as declarações assinadas para o aplicativo de GitHub Enterprise Server no seu IdP.

Erro: "Audiência é inválida" ou "Nenhuma declaração encontrada"

Se a resposta do IdP tiver um valor ausente ou incorreto para Audiência, a seguinte mensagem de erro aparecerá no registro de autenticação.

Audience inválido. O atributo Audience não corresponde a url_sua_instância

Certifique-se de que você definiu o valor para Audiência no seu IdP para EntityId para your GitHub Enterprise Server instance, que é o URL completo da sua instância. Por exemplo, https://ghe.corp.example.com.