Compartilhar via


Erro de "senha inválida" e resposta lenta à senha digitada no SSMS

Este artigo descreve um problema que ocorre na entrada de senha no SQL Server Management Studio (SSMS) com a autenticação do SQL Server.

Versão original do produto: SQL Server
Número original do KB: 4038457

Sintomas

Suponha que você use o SSMS 17.2 (ou uma versão mais antiga do programa) para se conectar a qualquer versão do SQL Server usando a autenticação do SQL Server. Quando você digita a senha, a resposta visual da caixa de senha ao pressionamento de teclas no teclado é visivelmente lenta. Além disso, a tentativa de login falha e uma mensagem de erro de "senha inválida" é exibida, mesmo que você tenha digitado a senha corretamente.

Causa

Esse problema ocorre porque a API de Proteção de Dados do Windows não pode fazer backup de uma MasterKey em um controlador de domínio para o domínio, que contém a conta do Windows usada para iniciar o SSMS.

Solução alternativa

Para contornar este problema:

Solução

Para corrigir esse problema, identifique e resolva o problema que está impedindo o backup do MasterKey da API de Proteção de Dados do Windows.

Mais informações

As etapas a seguir descrevem o que acontece nesse cenário:

  1. Quando você digita um caractere na caixa de senha no SSMS, a função DPAPI (API de Proteção de Dados do Windows) CryptProtectData é chamada para criptografar a senha.

  2. O DPAPI gera inicialmente uma chave forte chamada MasterKey (porque não há MasterKey válida a ser usada), que é protegida pelas credenciais de logon do usuário e o processo de backup é invocado.

  3. Quando esse processo falha (porque não há nenhum DC (Controlador de Domínio) gravável acessível para o domínio do usuário), um erro é gerado e gerado para o aplicativo SSMS.

  4. No código SSMS, esse erro é capturado e não tratado. Como o código não lida com a situação, esse erro não é mostrado ao usuário.

  5. Isso faz com que a senha enviada ao SQL Server seja uma cadeia de caracteres vazia. Quando você encontra esse problema, há dois sintomas:

    • A digitação na caixa de senha é visivelmente lenta devido às tentativas fracassadas de acessar um controlador de domínio gravável.

    • O SQL Server relata uma senha inválida em seu log de erros, mesmo quando a senha correta é inserida.

Essencialmente, você encontrou o problema documentado no artigo Falhas de backup DPAPI MasterKey quando o RWDC não está disponível. A Microsoft alterou o código do SSMS para a versão 17.3 e versões futuras. Portanto, se esse problema for encontrado, o sistema relatará a exceção lançada do DPAPI para um diagnóstico muito mais fácil.

Referências