Partilhar via


Verificador de Aplicativos – Códigos de Parada – NTLM

Os códigos de parada a seguir estão contidos neste conjunto de testes.

AcquireCredentialsHandle adquire a credencial NTLM explicitamente.

Causa provável

AcquireCredentialsHandle é chamado direta ou indiretamente pelo aplicativo com pszPackage = 'NTLM'. 'Negotiate' deve ser usado para corrigir esse problema. Um exemplo de chamada incorreta: AcquireCredentialsHandle( ... 'NTLM', // pszPackage ... ); Um exemplo de boa chamada: AcquireCredentialsHandle( ... 'Negotiate', // pszPackage ... ); Consulte a ajuda para obter informações mais detalhadas sobre esse código de parada.

Informações exibidas pelo Verificador de Aplicativos
  • Parâmetro 1  - Não usado.
  • Parâmetro 2  - Não usado.
  • Parâmetro 3  - Não usado.
  • Parâmetro 4  - Não usado.

Informações adicionais
  • Camada de teste:  NTLMCaller
  • ID de parada:  ACH_EXPLICIT_NTLM_PACKAGE
  • Código de parada:  5000000
  • Gravidade:  Erro
  • Erro único:  Não
  • Relatório de erros:  Quebrar
  • Fazer logon no arquivo:  Sim
  • Criar backtrace:  Sim

AcquireCredentialsHandle prefere credenciais NTLM. Consulte Param1 para obter o valor de PackageList.

Causa provável

AcquireCredentialsHandle é chamado direta ou indiretamente pelo aplicativo com pszPackage = 'Negotiate'. No entanto, o NTLM é preferencial na credencial fornecida (pAuthData). Um exemplo de chamada incorreta: AcquireCredentialsHandle( ... 'Negotiate', // pszPackage ... pAuthData, // pAuthData, ((SEC_WINNT_AUTH_IDENTITY_EX*)pAuthData)->PackageList é 'NTLM' ou 'NTLM, KERBEROS' etc. ... ); Um exemplo de boa chamada: AcquireCredentialsHandle( ... 'Negotiate', // pszPackage ... pAuthData, // pAuthData, ((SEC_WINNT_AUTH_IDENTITY_EX*)pAuthData)->PackageList = NULL ou NTLM é menos preferencial. ... ); Consulte a ajuda para obter informações mais detalhadas sobre esse código de parada.

Informações exibidas pelo Verificador de Aplicativos
  • Formato:  - Packagelist: %.*hs%.*ws
  • Parâmetro 1  - PackageList.
  • Parâmetro 2  - Não usado.
  • Parâmetro 3  - Não usado.
  • Parâmetro 4  - Não usado.

Informações adicionais
  • Camada de teste:  NTLMCaller
  • ID de parada:  ACH_IMPLICITLY_USE_NTLM
  • Código de parada:  5000001
  • Gravidade:  Erro
  • Erro único:  Não
  • Relatório de erros:  Quebrar
  • Fazer logon no arquivo:  Sim
  • Criar backtrace:  Sim

AcquireCredentialsHandle usa por engano '-NTLM' para excluir a credencial NTLM. Consulte Param1 para obter o valor de PackageList.

Causa provável

AcquireCredentialsHandle é chamado direta ou indiretamente pelo aplicativo com a credencial fornecida (pAuthData), na qual '-NTLM' é usado erroneamente para excluir a credencial NTLM. '! NTLM' deve ser usado para corrigir esse problema. Um exemplo de chamada incorreta: AcquireCredentialsHandle( ... 'Negotiate', // pszPackage ... pAuthData, // pAuthData, ((SEC_WINNT_AUTH_IDENTITY_EX*)pAuthData)->PackageList usa '-NTLM'. ... ); Um exemplo de boa chamada: AcquireCredentialsHandle( ... 'Negotiate', // pszPackage ... pAuthData, // pAuthData, ((SEC_WINNT_AUTH_IDENTITY_EX*)pAuthData)->PackageList usa '! NTLM'. ... ); Consulte a ajuda para obter informações mais detalhadas sobre esse código de parada.

Informações exibidas pelo Verificador de Aplicativos
  • Formato:  - PackageList: %.*hs%.*ws
  • Parâmetro 1  - PackageList.
  • Parâmetro 2  - Não usado.
  • Parâmetro 3  - Não usado.
  • Parâmetro 4  - Não usado.

Informações adicionais
  • Camada de teste:  NTLMCaller
  • ID de parada:  ACH_BAD_NTLM_EXCLUSION
  • Código de parada:  5000002
  • Gravidade:  Erro
  • Erro único:  Não
  • Relatório de erros:  Quebrar
  • Fazer logon no arquivo:  Sim
  • Criar backtrace:  Sim

InitializeSecurityContext usa destino NULL ou destino malformado para o serviço Kerberos. Consulte pszTargetName para obter o valor do destino.

Causa provável

InitializeSecurityContext é chamado direta ou indiretamente pelo aplicativo com pszTargetName sendo NULL ou malformado, com o qual o Kerberos não pode ser negociado. As diretrizes para corrigir esse problema para usar o Kerberos são fornecidas como abaixo: (1) O serviço ao qual o aplicativo cliente se autentica deve ter seu SPN registrado exclusivamente em sua floresta; (2) O serviço deve ser executado sob a identidade, usuário de domínio ou conta de computador, com esse SPN registrado; (3) InitializedSecuirtyContext deve ser chamado com esse SPN. Um exemplo de chamada incorreta: InitializeSecurityContext( ... NULL, // pszTargetName ... ); Outro exemplo de chamada incorreta: InitializeSecurityContext( ... '\\\\localhost', // pszTargetName ... ); Um exemplo de boa chamada: InitializeSecurityContext( ... 'myservice/mymachine.mydomain.com', // pszTargetName, myservice/mymachine.mydomain.com é um SPN registrado exclusivamente no qual o serviço é executado. ... ); Consulte a ajuda para obter informações mais detalhadas sobre esse código de parada.

Informações exibidas pelo Verificador de Aplicativos
  • Formato:  - pszTargetName: %hs%ws
  • Parâmetro 1  - Não usado.
  • Parâmetro 2  - Não usado.
  • Parâmetro 3  - Não usado.
  • Parâmetro 4  - Não usado.

Informações adicionais
  • Camada de teste:  NTLMCaller
  • ID de parada:  ISC_MALFORMED_TARGET
  • Código de parada:  5000003
  • Gravidade:  Erro
  • Erro único:  Não
  • Relatório de erros:  Quebrar
  • Fazer logon no arquivo:  Sim
  • Criar backtrace:  Sim

O aplicativo cliente faz downgrade para usar a autenticação NTLM como resultado da negociação. Consulte pAuthData para obter mais detalhes. pAuthData mostra a credencial e o destino usados para essa negociação.

Causa provável

O aplicativo cliente faz downgrade para usar a autenticação NTLM como resultado da negociação. Pode haver muitos motivos para esse problema. As diretrizes para solucionar esse problema são fornecidas como abaixo: (1) Ative a camada do appverifier NTLMCaller se ela não estiver ativada. Essa camada capturará problemas conhecidos que podem causar o downgrade; (2) Se pszTargetName for um SPN, verifique se esse SPN está registrado exclusivamente na floresta (o SPN não pode estar ausente ou duplicado); (3) O SPN deve ser pesquisado pelo sistema cliente que executa o aplicativo cliente; (4) O serviço deve ser executado em uma identidade com sua credencial Kerberos disponível; (5) O cenário deve ser revisado por especialistas em segurança do Windows. Consulte a ajuda para obter informações mais detalhadas sobre esse código de parada.

Informações exibidas pelo Verificador de Aplicativos
  • Formato:  - pAuthData: %ws \n\tUser: %hs%ws \n\tDomain: %hs%ws \npszTargetName: %hs%ws
  • Parâmetro 1  - Não usado.
  • Parâmetro 2  - Não usado.
  • Parâmetro 3  - Não usado.
  • Parâmetro 4  - Não usado.

Informações adicionais
  • Camada de teste:  NTLMDowngrade
  • ID de parada:  FALLBACK_TO_NTLM
  • Parar código:  5010000
  • Gravidade:  Aviso
  • Erro único:  Não
  • Relatório de erros:  Nenhum
  • Faça logon no arquivo:  Sim
  • Criar backtrace:  Sim

Consulte Também

Verificador de Aplicativos – Parar códigos e definições

Verificador de Aplicativos – Visão geral

Verificador de Aplicativos – Recursos

Verificador de Aplicativos – Testando aplicativos

Verificador de Aplicativos – Testes no Verificador de Aplicativos

Verificador de Aplicativos – Depuração de Paradas do Verificador de Aplicativo

Verificador de Aplicativos – Perguntas frequentes