Compartilhar via


Erro do ADFS 2.0: 401 O recurso solicitado requer autenticação do usuário

Este artigo discute um problema em que você é solicitado a fornecer credenciais e o evento 111 é registrado quando você autentica uma conta nos Serviços de Federação do Active Directory (AD FS) 2.0.

Número original do KB: 3044976

Resumo

A maioria dos problemas dos Serviços Federados do Active Directory (AD FS) 2.0 pertence a uma das seguintes categorias principais. Este artigo contém instruções passo a passo para solucionar problemas de autenticação.

Sintomas

Quando você tenta autenticar uma conta nos Serviços de Federação do Active Directory (AD FS) 2.0, ocorrem os seguintes erros:

  • O servidor do AD FS retorna a seguinte mensagem de erro:

    Erro HTTP não autorizado 401. O recurso solicitado requer a autenticação do usuário.

  • Em uma tela de login baseada em formulário, o servidor retorna a seguinte mensagem de erro:

    O nome de usuário ou senha está incorreta.

  • Você é continuamente solicitado a fornecer credenciais.

  • O evento 111 é registrado no log de administração do AD FS, da seguinte maneira:

    Nome do log: AD FS 2.0/Admin
    ID do evento: 111
    Nível: Erro
    Palavras-chave: AD FS
    Descrição:
    O Serviço de Federação encontrou um erro ao processar a solicitação WS-Trust.
    Tipo de solicitação: http://schemas.xmlsoap.org/ws/2005/02/trust/RST/Issue
    Detalhes da exceção:
    Microsoft.IdentityModel.SecurityTokenService.FailedAuthenticationException: MSIS3019: falha na autenticação. >--- System.IdentityModel.Tokens.SecurityTokenValidationException: ID4063: Falha no LogonUser para o usuário 'user1'. Verifique se o usuário tem uma conta válida do Windows. >--- System.ComponentModel.Win32Exception: Falha de logon: nome de usuário desconhecido ou senha incorreta

Resolução

Para resolver esse problema, siga estas etapas, na ordem fornecida. Essas etapas ajudarão você a determinar a causa do problema.

Etapa 1: Atribuir o registro correto do nome do serviço de Federação do AD FS

Verifique se o DNS tem um registro HOST (A) para o nome do serviço de Federação do AD FS e evite usar um registro CNAME. Para obter mais informações, consulte Comportamentos do Internet Explorer com autenticação Kerberos.

Etapa 2: Verificar o registro do nome do Serviço de Federação

Localize o Nome do Serviço de Federação e verifique se o nome está registrado na conta de serviço do AD FS. Para fazer isso, siga estas etapas:

  1. Localize o nome do nome> do serviço HOST/<Federação:

    1. Abra o Gerenciador do AD FS 2.0.

    2. Clique com o botão direito do mouse em ADFS 2.0 e selecione Editar Propriedades do Serviço de Federação.

    3. Na guia Geral , localize o campo Nome do Serviço de Federação para ver o nome.

      Captura de tela da janela Propriedades do Serviço de Federação, onde você pode verificar o nome do Serviço de Federação.

  2. Verifique se o nome do nome> do serviço HOST/<Federação está registrado na conta de serviço do AD FS:

    1. Abra o snap-in Gerenciamento. Para fazer isso, clique em Iniciar, em Todos os Programas, em Ferramentas Administrativas e em Serviços.

    2. Clique duas vezes em AD FS (2.0) Serviço do Windows.

    3. Na guia Logon , observe a conta de serviço exibida no campo Esta conta .

      Captura de tela da janela Propriedades do Serviço do Windows (Computador Local) do AD FS 2.0, na qual a conta de serviço é exibida no campo Esta conta.

    4. Clique em Iniciar, em Todos os Programas, em Acessórios, clique com o botão direito do mouse em Prompt de Comando e clique em Executar como administrador.

    5. Execute o comando a seguir:

      SETSPN -L domain\<ADFS Service Account>
      

      Captura de tela para o resultado do comando setspn.

Se o nome do Serviço de Federação ainda não existir, execute o seguinte comando para adicionar o SPN (nome da entidade de serviço) à conta do AD FS:

SetSPN -a host/<Federation service name> <username of service account>

Captura de tela para o resultado do comando setspn, que é adicionar o nome da entidade de serviço.

Etapa 3: Verificar se há SPNs duplicados

Verifique se não há SPNs duplicados para o nome da conta do AD FS. Para fazer isso, siga estas etapas:

  1. Clique em Iniciar, em Todos os Programas, em Acessórios, clique com o botão direito do mouse em Prompt de Comando e clique em Executar como administrador.

  2. Execute o seguinte comando para garantir que não haja SPNs duplicados para o nome da conta do AD FS:

    SETSPN -X -F
    

Etapa 4: verificar se o navegador usa a autenticação integrada do Windows

Verifique se o navegador Internet Explorer que você está usando está configurado para usar a Autenticação Integrada do Windows. Para fazer isso, inicie o Internet Explorer, clique em Configurações, clique em Opções da Internet, clique em Avançado e clique em Habilitar Autenticação Integrada do Windows.

Etapa 5: verificar o tipo de autenticação

Verifique se o tipo de autenticação padrão no servidor do AD FS está configurado corretamente. Para fazer isso, siga estas etapas:

  1. No Windows Explorer, navegue até C:\inetpub\adfs\ls (isso pressupõe que inetpub esteja localizado na unidade C).
  2. Localize Web.config e abra o arquivo no Bloco de Notas.
  3. No arquivo, localize (Ctrl+F) <localAuthenticationTypes>.
  4. Em <localAuthenticationTypes>, localize as quatro linhas que representam os tipos de autenticação local.
  5. Selecione e exclua seu tipo de autenticação local preferido (a linha inteira). Em seguida, cole a linha na parte superior da lista (em localAuthenticationTypes>).<
  6. Salve e feche o arquivo Web.config.

Para obter mais informações sobre o Tipo de Autenticação Local, consulte o seguinte tópico do TechNet:

AD FS 2.0: Como alterar o tipo de autenticação local

Etapa 6: verificar as configurações de autenticação

Verifique se os diretórios virtuais do AD FS estão configurados corretamente para autenticação no IIS (Serviços de Informações da Internet).

  • No nó Site Padrão/adfs, abra a configuração Autenticação e verifique se a Autenticação Anônima está habilitada.
  • No nó Site Padrão/adfs/ls, abra a configuração Autenticação e verifique se a Autenticação Anônima e a Autenticação do Windows estão habilitadas.

Etapa 7: Verificar as configurações de confiança do proxy

Se você tiver um servidor proxy do AD FS configurado, verifique se a confiança do proxy é renovada durante os intervalos de conexão entre os servidores proxy do AD FS e do AD FS.

O servidor proxy renova automaticamente a confiança com o Serviço de Federação do AD FS. Se esse processo falhar, o evento 394 será registrado no Visualizador de Eventos e você receberá a seguinte mensagem de erro:

O proxy do servidor de federação não pôde renovar sua confiança com o Serviço de Federação.

Para resolver esse problema, tente executar o assistente de configuração de proxy do AD FS novamente. À medida que o assistente é executado, certifique-se de que o nome de usuário e as senhas de domínio válidos sejam usados. Essas credenciais não são armazenadas no servidor proxy do AD FS. Ao inserir credenciais para o assistente de configuração de confiança de proxy, você tem duas opções.

  • Use credenciais de domínio que tenham direitos administrativos locais nos servidores do AD FS.
  • Usar as credenciais da conta de serviço do AD FS

Etapa 8: Verificar as configurações de proteção estendida do IIS

Determinados navegadores não poderão autenticar se a proteção estendida (ou seja, a Autenticação do Windows) estiver habilitada no IIS, conforme mostrado na Etapa 5. Tente desabilitar a autenticação do Windows para determinar se isso resolve o problema.

Você também veria a proteção estendida não permitindo a autenticação do Windows quando o proxy SSL está sendo feito por ferramentas como o Fiddler ou alguns balanceadores de carga inteligentes.

Por exemplo: você poderá ver prompts de autenticação repetidos se tiver o Depurador da Web do Fiddler em execução no cliente.

Para desabilitar a proteção estendida para autenticação, siga o método apropriado, dependendo do tipo de cliente.

Para clientes passivos

Use esse método para os aplicativos virtuais "Site padrão/adfs/ls" em todos os servidores no farm de servidores de federação do AD FS. Para fazer isso, siga estas etapas:

  1. Abra o Gerenciador do IIS e localize o nível que você deseja gerenciar.

    Para obter mais informações sobre como abrir o Gerenciador do IIS, consulte Abrir o Gerenciador do IIS (IIS 7).

  2. Em Exibição de Recursos, clique duas vezes em Autenticação.

  3. Na página Autenticação , selecione Autenticação do Windows.

  4. No painel Ações, clique em Configurações Avançadas.

  5. Quando a caixa de diálogo Configurações avançadas for exibida, clique em Desativado no menu Proteção estendida.

Para clientes ativos

Use este método para o servidor primário do AD FS:

  1. Inicie o Windows PowerShell.

  2. Para carregar o snap-in do Windows PowerShell para AD FS, execute o seguinte comando:

    Add-PsSnapIn Microsoft.Adfs.Powershell
    
  3. Para desabilitar a proteção estendida para autenticação, execute o seguinte comando:

    Set-ADFSProperties -ExtendedProtectionTokenCheck "None"
    

Etapa 9: Verificar o status do canal seguro entre o servidor ADFS e os DCs

Verifique se o canal seguro entre o AD FS e os DCs é bom. Para fazer isso, execute o seguinte comando:

Nltest /dsgetdc:domainname

Se a resposta for diferente de "êxito", você deverá solucionar problemas do canal seguro netlogon. Para fazer isso, verifique se as seguintes condições são verdadeiras:

  • O controlador de domínio (DC) está acessível
  • Os nomes dos DC podem ser resolvidos
  • As senhas no computador e sua conta no site do Active Directory estão sincronizadas.

Etapa 10: verificar se há gargalos

Verifique se você está enfrentando gargalos relacionados à autenticação de acordo com a configuração MaxconcurrentAPI no servidor do AD FS ou nos DCs. Para obter mais informações sobre como verificar essa configuração, consulte o seguinte artigo da Base de Dados de Conhecimento:

Como fazer o ajuste de desempenho para autenticação NTLM usando a configuração MaxConcurrentApi

Etapa 11: Verificar se o servidor proxy do ADFS está com congestionamento

Verifique se o servidor proxy do ADFS está limitando as conexões porque recebeu muitas solicitações ou atrasou a resposta do servidor do AD FS. Para obter mais informações, consulte o seguinte tópico do TechNet:

AD FS 2.x: Solucionando problemas de ID de evento do servidor proxy 230 (algoritmo de prevenção de congestionamento)

Nesse cenário, você pode observar falhas intermitentes de logon no ADFS.

Etapa 12: Verificar as configurações de confiança do proxy

Se você tiver um servidor proxy do ADFS configurado, verifique se a confiança do proxy é renovada durante os intervalos de conexão entre os servidores proxy do AD FS e do AD FS.

O servidor proxy renova automaticamente a confiança com o Serviço de Federação do AD FS. Se esse processo falhar, o evento 394 será registrado no Visualizador de Eventos e você receberá a seguinte mensagem de erro:

O proxy do servidor de federação não pôde renovar sua confiança com o Serviço de Federação.

Para resolver esse problema, tente executar o assistente de configuração de proxy do AD FS novamente. À medida que o assistente é executado, certifique-se de que o nome de usuário e as senhas de domínio válidos sejam usados. Essas credenciais não são armazenadas no servidor proxy do AD FS.

Etapa 13: Habilitar a auditoria do ADFS junto com eventos de logon de auditoria - êxito e falha

Para obter mais informações, consulte Configurando servidores ADFS para solução de problemas.