Compartilhar via


Solucionar problemas de token de atualização primário em dispositivos Windows

Este artigo discute como solucionar problemas que envolvem o token de atualização primário (PRT) ao se autenticar em um dispositivo Windows ingressado no Microsoft Entra usando suas credenciais do Microsoft Entra.

Em dispositivos que ingressaram no Microsoft Entra ID ou de Microsoft Entra ID híbrido, o componente principal da autenticação é o PRT. Obtenha esse token ao entrar no Windows 10 usando as credenciais do Microsoft Entra em um dispositivo ingressado no Microsoft Entra pela primeira vez. O PRT é armazenado em cache nesse dispositivo. Para as entradas seguintes, o token armazenado em cache é usado para permitir que você use a área de trabalho.

Como parte do processo de bloqueio e desbloqueio do dispositivo ou de entrar novamente no Windows, uma tentativa de autenticação de rede em segundo plano é feita uma vez a cada quatro horas para atualizar o PRT. Se ocorrerem problemas que impeçam a atualização do token, o PRT acabará expirando. A expiração afeta o SSO (logon único) para recursos do Microsoft Entra. Ele também faz com que os prompts de entrada sejam mostrados.

Se você suspeitar que existe um problema de PRT, recomendamos que primeiro colete os logs do Microsoft Entra e siga as etapas descritas na lista de verificação de solução de problemas. Faça isso primeiro para qualquer problema de cliente do Microsoft Entra, de preferência em uma sessão de reprodução. Conclua esse processo antes de arquivar uma solicitação de suporte.

Lista de verificação de solução de problemas

Etapa 1: obter o status do token de atualização primário

  1. Entre no Windows com a conta de usuário na qual você está tendo problemas com o PRT.

  2. Selecione Iniciar e, em seguida, pesquise e selecione Prompt de Comando.

  3. Para executar o comando de registro de dispositivo (dsregcmd), insira dsregcmd /status.

  4. Localize a seção Estado de SSO da saída do comando de registro do dispositivo. O texto a seguir mostra um exemplo dessa seção:

    +----------------------------------------------------------------------+
    | SSO State                                                            |
    +----------------------------------------------------------------------+
    
                    AzureAdPrt : YES
          AzureAdPrtUpdateTime : 2020-07-12 22:57:53.000 UTC
          AzureAdPrtExpiryTime : 2020-07-26 22:58:35.000 UTC
           AzureAdPrtAuthority : https://login.microsoftonline.com/00001111-aaaa-2222-bbbb-3333cccc4444
                 EnterprisePrt : YES
       EnterprisePrtUpdateTime : 2020-07-12 22:57:54.000 UTC
       EnterprisePrtExpiryTime : 2020-07-26 22:57:54.000 UTC
        EnterprisePrtAuthority : https://msft.sts.microsoft.com:443/adfs
    
    +----------------------------------------------------------------------+
    
  5. Verifique o valor do campo AzureAdPrt. Se estiver definido como NO, ocorreu um erro quando você tentou adquirir o status de PRT do Microsoft Entra ID.

  6. Verifique o valor do campo AzureAdPrtUpdateTime. Se o valor do campo AzureAdPrtUpdateTime for superior a quatro horas, um problema provavelmente impedirá que o PRT seja atualizado. Bloqueie e desbloqueie o dispositivo para forçar uma atualização do PRT e, em seguida, verifique se a hora está atualizada.

Etapa 2: obter o código de erro

A próxima etapa é obter o código de erro que causa o erro do PRT. A maneira mais rápida de obter o código de erro do PRT é examinar a saída do comando de registro do dispositivo. No entanto, esse método requer a atualização de maio de 2021 do Windows 10 (versão 21H1) ou uma versão posterior. O outro método é localizaro código de erro nos logs analíticos e operacionais do Microsoft Entra.

Método 1: examinar a saída do comando de registro do dispositivo

Observação

Esse método só estará disponível se você estiver usando a atualização de maio de 2021 do Windows 10 (versão 21H1) ou uma versão posterior do Windows.

Para obter o código de erro do PRT, execute o comando dsregcmd e localize a seção SSO State. No campo AzureAdPrt, o campo Attempt Status contém o código de erro. No exemplo a seguir, o código de erro é 0xc000006d.

                AzureAdPrt : NO
       AzureAdPrtAuthority : https://login.microsoftonline.com/aaaa0000-bb11-2222-33cc-444444dddddd
     AcquirePrtDiagnostics : PRESENT
      Previous Prt Attempt : 2020-09-18 20:20:09.760 UTC
            Attempt Status : 0xc000006d
             User Identity : user@contoso.com
           Credential Type : Password
            Correlation ID : aaaa0000-bb11-2222-33cc-444444dddddd
              Endpoint URI : https://login.microsoftonline.com/aaaa0000-bb11-2222-33cc-444444dddddd/oauth2/token
               HTTP Method : POST
                HTTP Error : 0x0
               HTTP status : 400
         Server Error Code : invalid_grant
  Server Error Description : AADSTS50126: Error validating credentials due to invalid username or password.

Método 2: usar o Visualizador de Eventos para examinar os logs analíticos e operacionais do AAD

  1. Selecione Iniciar e, em seguida, pesquise e selecione Visualizador de Eventos.

  2. Se a árvore de console não aparecer na janela Visualizador de Eventos, selecione o ícone Mostrar/Ocultar Árvore de Console para tornar a árvore de console visível.

  3. Na árvore de console, selecione Visualizador de Eventos (Local). Se os nós filho não aparecerem abaixo desse item, clique duas vezes na seleção para mostrá-los.

  4. Selecione o menu Exibir. Se uma marca de seleção não for exibida ao lado de Mostrar Logs de Análise e Depuração, selecione o item de menu para habilitar o recurso.

  5. Na árvore de console, expanda Logs de Aplicativos e Serviços>Microsoft>Windows>AAD. Os nós filho Operacionais e Analíticos são exibidos.

    Observação

    No plug-in CloudAP (Provedor de Autenticação na Nuvem) do Microsoft Entra, os eventos de Erro são escritos nos logs de eventos Operacionais e os eventos de informação são escritos nos logs de eventos Analíticos. Você precisa examinar os logs de eventos Operacionais e Analíticos para solucionar problemas de PRT.

  6. Na árvore de console, selecione o nó Analítico para exibir eventos analíticos relacionados ao AAD.

  7. Na lista de eventos analíticos, pesquise as IDs de Evento 1006 e 1007. A ID de Evento 1006 indica o início do fluxo de aquisição do PRT e a ID de Evento 1007 indica o fim do fluxo de aquisição do PRT. Todos os eventos nos logs do AAD (Analíticos e Operacionais) que ocorreram entre a ID de Evento 1006 e a ID de Evento 1007 são registrados como parte do fluxo de aquisição do PRT. A tabela a seguir mostra um exemplo de listagem de eventos.

    Nível Data e hora Fonte ID do evento Categoria da Tarefa
    Informações 24/06/2020 3:35:35 AM AAD 1.006 AadCloudAPPlugin Operation
    Informações 24/06/2020 3:35:35 AM AAD 1018 AadCloudAPPlugin Operation
    Informações 24/06/2020 3:35:35 AM AAD 1144 AadCloudAPPlugin Operation
    Informações 24/06/2020 3:35:35 AM AAD 1022 AadCloudAPPlugin Operation
    Erro 24/06/2020 3:35:35 AM AAD 1084 AadCloudAPPlugin Operation
    Erro 24/06/2020 3:35:35 AM AAD 1086 AadCloudAPPlugin Operation
    Erro 24/06/2020 3:35:35 AM AAD 1160 AadCloudAPPlugin Operation
    Informações 24/06/2020 3:35:35 AM AAD 1.007 AadCloudAPPlugin Operation
    Informações 24/06/2020 3:35:35 AM AAD 1157 AadCloudAPPlugin Operation
    Informações 24/06/2020 3:35:35 AM AAD 1158 AadCloudAPPlugin Operation
  8. Clique duas vezes na linha que contém a ID do Evento 1007. A caixa de diálogo Propriedades do Evento para esse evento é exibida.

  9. Na caixa de descrição na guia Geral, copie o código de erro. O código de erro é uma cadeia de caracteres de 10 caracteres que começa com 0x, seguida por um número hexadecimal de 8 dígitos.

Etapa 3: obter instruções de solução de problemas para determinados códigos de erro

Códigos de status (prefixo "STATUS_", códigos que começam com "0xc000")

STATUS_LOGON_FAILURE (-1073741715 / 0xc000006d),
STATUS_WRONG_PASSWORD (-1073741718 / 0xc000006a)
Causa
  • O dispositivo não pode se conectar ao serviço de autenticação do Microsoft Entra.

  • O dispositivo recebeu uma resposta de erro HTTP 400 Bad Request de uma das seguintes fontes:

    • O serviço de autenticação do Microsoft Entra
    • Um ponto de extremidade para o protocolo WS-Trust (necessário para autenticação federada)
Solução
  • Se o ambiente local exigir um proxy de saída, verifique se a conta do computador do dispositivo pode descobrir e se autenticar silenciosamente no proxy de saída.

  • Obtenha o código de erro do servidor e a descrição do erro e vá para a seção Códigos de erro de servidor comuns (prefixo "AADSTS" para encontrar a causa desse código de erro do servidor e os detalhes da solução.

    Nos logs operacionais do Microsoft Entra, a ID de Evento 1081 contém o código de erro do servidor e a descrição do erro se o erro ocorrer no serviço de autenticação do Microsoft Entra. Se o erro ocorrer em um ponto de extremidade WS-Trust, o código de erro do servidor e a descrição do erro serão encontrados na ID do Evento 1088. Nos logs analíticos do Microsoft Entra, a primeira instância da ID de Evento 1022 (que precede as IDs de Evento operacionais 1081 e 1088) contém a URL que está sendo acessada.

    Para exibir IDs de evento nos logs operacionais e analíticos do Microsoft Entra, consulte a seção Método 2: usar o Visualizador de Eventos para examinar logs analíticos e operacionais do Microsoft Entra.

STATUS_REQUEST_NOT_ACCEPTED (-1073741616 / 0xc00000d0)
Causa

O dispositivo recebeu uma resposta de erro HTTP 400 Bad Request de uma das seguintes fontes:

  • O serviço de autenticação do Microsoft Entra
  • Um ponto de extremidade para o protocolo WS-Trust (necessário para autenticação federada)
Solução

Obtenha o código de erro do servidor e a descrição do erro e vá para a seção Códigos de erro de servidor comuns (prefixo "AADSTS" para encontrar a causa desse código de erro do servidor e os detalhes da solução.

Nos logs operacionais do Microsoft Entra, a ID de Evento 1081 contém o código de erro do servidor e a descrição do erro se o erro ocorrer no serviço de autenticação do Microsoft Entra. Se o erro ocorrer em um ponto de extremidade WS-Trust, o código de erro do servidor e a descrição do erro serão encontrados na ID do Evento 1088. Nos logs analíticos do Microsoft Entra, a primeira instância da ID de Evento 1022 (que precede as IDs de Evento operacionais 1081 e 1088) contém a URL que está sendo acessada.

Para exibir IDs de evento nos logs operacionais e analíticos do Microsoft Entra, consulte a seção Método 2: usar o Visualizador de Eventos para examinar logs analíticos e operacionais do Microsoft Entra.

STATUS_NETWORK_UNREACHABLE (-1073741252 / 0xc000023c),
STATUS_BAD_NETWORK_PATH (-1073741634 / 0xc00000be),
STATUS_UNEXPECTED_NETWORK_ERROR (-1073741628 / 0xc00000c4)
Causa
  • O dispositivo recebeu uma resposta de erro HTTP 4xx de uma das seguintes fontes:

    • O serviço de autenticação do Microsoft Entra
    • Um ponto de extremidade para o protocolo WS-Trust (necessário para autenticação federada)
  • Existe um problema de conectividade de rede com um ponto de extremidade necessário.

Solução
  • Obtenha o código de erro do servidor e a descrição do erro e vá para a seção Códigos de erro de servidor comuns (prefixo "AADSTS" para encontrar a causa desse código de erro do servidor e os detalhes da solução.

    Nos logs operacionais do Microsoft Entra, a ID de Evento 1081 contém o código de erro do servidor e a descrição do erro se o erro ocorrer no serviço de autenticação do Microsoft Entra. Se o erro ocorrer em um ponto de extremidade WS-Trust, o código de erro do servidor e a descrição do erro serão encontrados na ID do Evento 1088.

  • Para um problema de conectividade de rede, obtenha a URL que está sendo acessada e o código do suberro da pilha de rede. A ID de Evento 1022 nos logs analíticos do Microsoft Entra contém a URL que está sendo acessada. A ID de Evento 1084 nos logs operacionais do Microsoft Entra contém o código de suberro da pilha de rede.

Para exibir IDs de evento nos logs operacionais e analíticos do Microsoft Entra, consulte a seção Método 2: usar o Visualizador de Eventos para examinar logs analíticos e operacionais do Microsoft Entra.

STATUS_NO_SUCH_LOGON_SESSION (-1073741729 / 0xc000005f)
Causa

Falha na descoberta do domínio do usuário, pois o serviço de autenticação do Microsoft Entra não consegue encontrar o domínio do usuário.

Solução

Códigos de erro comuns do plug-in CloudAP (prefixo "AAD_CLOUDAP_E_", códigos que começam com "0xc004")

AAD_CLOUDAP_E_OAUTH_USERNAME_IS_MALFORMED (-1073445812 / 0xc004844c)
Causa

O UPN para o usuário não está no formato esperado. O valor UPN varia de acordo com o tipo de dispositivo, conforme mostrado na tabela a seguir.

Tipo de junção de dispositivo Valor UPN
Dispositivos ingressados no Microsoft Entra O texto inserido quando o usuário entra
Dispositivos ingressados de forma híbrida no Microsoft Entra O UPN que o controlador de domínio retorna durante o processo de entrada
Solução
AAD_CLOUDAP_E_OAUTH_USER_SID_IS_EMPTY (-1073445822 / 0xc0048442)
Causa

O SID (identificador de segurança) do usuário (SID) está ausente no token de ID retornado pelo serviço de autenticação do Microsoft Entra.

Solução

Verifique se o proxy de rede não interfere ou modifica a resposta do servidor.

AAD_CLOUDAP_E_WSTRUST_SAML_TOKENS_ARE_EMPTY (-1073445695 / 0xc00484c1 / 0x800484c1)
Causa

Você recebeu um erro do ponto de extremidade do protocolo WS-Trust (necessário para autenticação federada).

Solução
AAD_CLOUDAP_E_HTTP_PASSWORD_URI_IS_EMPTY (-1073445749 / 0xc004848b)
Causa

O ponto de extremidade MetadataExchange (MEX) está configurado incorretamente. A resposta MEX não contém URLs de senha.

Solução
  • Verifique se o proxy de rede não interfere ou modifica a resposta do servidor.

  • Corrige a configuração do MEX para retornar URLs válidas na resposta.

AAD_CLOUDAP_E_HTTP_CERTIFICATE_URI_IS_EMPTY (-1073445748 / 0xc004848c)
Causa

O ponto de extremidade MetadataExchange (MEX) está configurado incorretamente. A resposta MEX não contém nenhum URL de ponto de extremidade de certificado.

Solução
  • Verifique se o proxy de rede não interfere ou modifica a resposta do servidor.

  • Corrija a configuração do MEX no provedor de identidade para retornar URLs de certificados válidos na resposta.

Códigos de erro XML comuns (códigos que começam com "0xc00c")

WC_E_DTDPROHIBITED (-1072894385 / 0xc00cee4f)
Causa

A resposta XML do ponto de extremidade do protocolo WS-Trust (necessário para autenticação federada) incluiu uma DTD (definição de tipo de documento). A DTD não é esperada na resposta XML e a análise de resposta falhará se a DTD estiver incluída.

Solução

Códigos de erro comuns do servidor (prefixo "AADSTS")

Você pode encontrar uma lista completa e uma descrição dos códigos de erro do servidor nos códigos de erro de autenticação e autorização do Microsoft Entra.

AADSTS50155: falha na autenticação do dispositivo
Causa
Solução

Registre novamente o dispositivo com base no tipo de ingresso do dispositivo. Para obter instruções, consulte Desabilitei ou excluí meu dispositivo. Mas o estado local do dispositivo diz que ele ainda está registrado. O que devo fazer?.

AADSTS50034: a conta de usuário <Account> não existe no diretório <tenant-id>
Causa

O Microsoft Entra ID não consegue encontrar a conta de usuário no locatário.

Solução
AADSTS50126: erro ao validar credenciais devido a nome de usuário ou senha inválidos
Causa
  • O usuário inseriu um nome de usuário ou senha incorreto na interface do usuário de entrada.

  • A senha não foi sincronizada com o Microsoft Entra devido ao seguinte cenário:

Solução

Para adquirir um PRT que tenha as novas credenciais, aguarde a conclusão da sincronização do Microsoft Entra.

Códigos de erro de rede comuns (prefixo "ERROR_WINHTTP_")

Você pode encontrar uma lista completa e uma descrição dos códigos de erro de rede em Mensagens de erro (Winhttp.h).

ERROR_WINHTTP_TIMEOUT (12002),
ERROR_WINHTTP_NAME_NOT_RESOLVED (12007),
ERROR_WINHTTP_CANNOT_CONNECT (12029),
ERROR_WINHTTP_CONNECTION_ERROR (12030)
Causa

Problemas comuns gerais relacionados à rede.

Solução
  • Obtenha a URL que está sendo acessada. Você pode encontrar a URL na ID de Evento 1084 do log operacional do Microsoft Entra ou na ID de Evento 1022 do log analítico do Microsoft Entra.

    Para exibir IDs de evento nos logs operacionais e analíticos do Microsoft Entra, consulte a seção Método 2: usar o Visualizador de Eventos para examinar logs analíticos e operacionais do Microsoft Entra.

  • Se o ambiente local exigir um proxy de saída, verifique se a conta do computador do dispositivo pode descobrir e se autenticar silenciosamente no proxy de saída.

  • Colete rastreamentos de rede seguindo estas etapas:

    Importante

    Não use o Fiddler durante esse procedimento.

    1. Execute o seguinte comando netsh trace start:

      netsh trace start scenario=InternetClient_dbg capture=yes persistent=yes
      
    2. Bloqueie o dispositivo.

    3. Se o dispositivo estiver ingressado no Microsoft Entra híbrido, aguarde pelo menos 60 segundos para que a tarefa de aquisição do PRT seja concluída.

    4. Desbloqueie o dispositivo.

    5. Execute o seguinte comando netsh trace stop:

      netsh trace stop
      

Etapa 4: coletar os logs e rastreamentos

Logs regulares

  1. Baixe o Arquivo de script de autenticação e extraia os scripts para um diretório local. Se for necessário, examine as instruções de uso em KB 4487175.

  2. Abra uma sessão administrativa do PowerShell e altere o diretório atual para o diretório no qual você salvou os scripts de autenticação.

  3. Para iniciar a sessão de rastreamento de erros, insira o seguinte comando:

    .\Start-auth.ps1 -v -acceptEULA
    
  4. Alterne a conta de usuário do Windows para ir para a sessão do usuário com problema.

  5. Bloqueie o dispositivo.

  6. Se o dispositivo estiver ingressado no Microsoft Entra híbrido, aguarde pelo menos 60 segundos para que a tarefa de aquisição do PRT seja concluída.

  7. Desbloqueie o dispositivo.

  8. Alterne a conta de usuário do Windows de volta para a sessão administrativa que está executando a sessão de rastreamento.

  9. Depois de reproduzir o problema, execute o seguinte comando para encerrar a sessão de rastreamento:

    .\stop-auth.ps1
    
  10. Aguarde até que todo o rastreamento pare completamente.

Rastreamentos de viagem no tempo

O procedimento a seguir descreve como capturar rastreamentos usando o recurso TTD (Depuração de Viagem no Tempo).

Aviso

Os rastreamentos de viagem no tempo contêm dados pessoais. Além disso, os rastreamentos do Serviço de Subsistema da Autoridade de Segurança Local (LSASS ou lsass.exe) contêm informações extremamente confidenciais. Ao lidar com esses rastreamentos, certifique-se de usar as melhores práticas para o armazenamento e o compartilhamento desse tipo de informação.

  1. Selecione Iniciar, insira cmd, localize e clique com o botão direito do mouse em Prompt de Comando nos resultados da pesquisa e selecione Executar como administrador.

  2. No prompt de comando, crie um diretório temporário:

    mkdir c:\temp
    
  3. Execute o seguinte comando tasklist:

    tasklist /m lsasrv.dll
    
  4. Na saída do comando tasklist, localize o identificador de processo (PID) do lsass.exe.

  5. Para iniciar uma sessão de rastreamento do processo lsass.exe, execute o seguinte comando de depuração de viagem no tempo (TTD.exe):

    TTD.exe -attach <lsass-pid> -out c:\temp
    
  6. Bloqueie o dispositivo que está conectado na conta de domínio.

  7. Desbloqueie o dispositivo.

  8. Para encerrar a sessão de rastreamento de viagem no tempo, execute o seguinte comando TTD:

    TTD.exe -stop all
    
  9. Obtenha o arquivo lsass##.run mais recente.