Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
En este artículo se describe un problema que se produce en la entrada de contraseña en SQL Server Management Studio (SSMS) con la autenticación de SQL Server.
Versión del producto original: SQL Server
Número de KB original: 4038457
Síntomas
Supongamos que usa SSMS 17.2 (o una versión anterior del programa) para conectarse a cualquier versión de SQL Server mediante la autenticación de SQL Server. Al escribir la contraseña, la respuesta visual del cuadro de contraseña a la tecla presiona en el teclado es notablemente lenta. Además, se produce un error en el intento de inicio de sesión y se muestra un mensaje de error "contraseña no válida", incluso si escribió correctamente la contraseña.
Causa
Este problema se produce porque la API de Protección de datos de Windows no puede realizar una copia de seguridad de masterKey en un controlador de dominio para el dominio, que contiene la cuenta de Windows que se usa para iniciar SSMS.
Solución alternativa
Para evitar este problema:
- Use autenticación de Windows en lugar de la autenticación de SQL.
- Inicie sesión en Windows con una cuenta local en lugar de una cuenta de dominio.
- Siga los pasos descritos en la sección "Resolución" de errores de copia de seguridad de MasterKey de DPAPI cuando RWDC no está disponible.
Solución
Para corregir este problema, identifique y resuelva el problema que impide la copia de seguridad de MasterKey de la API de Protección de datos de Windows.
Más información
En los pasos siguientes se describe lo que sucede en este escenario:
Al escribir un carácter en el cuadro de contraseña en SSMS, se llama a la función CryptProtectData Windows Data Protection API (DPAPI) para cifrar la contraseña.
DPAPI genera inicialmente una clave segura denominada MasterKey (porque no se va a usar masterKey válida), que está protegida por las credenciales de inicio de sesión del usuario y se invoca el proceso de copia de seguridad.
Cuando se produce un error en este proceso (porque no hay ningún controlador de dominio grabable accesible para el dominio de usuario), se genera un error y se produce en la aplicación SSMS.
En el código de SSMS, este error se detecta y no se controla. Dado que el código no controla la situación, este error no se muestra al usuario.
Esto hace que la contraseña que se envía a SQL Server sea una cadena vacía. Cuando se produce este problema, hay dos síntomas:
Escribir en el cuadro de contraseña es notablemente lento debido a los intentos erróneos de llegar a un controlador de dominio grabable.
SQL Server notifica una contraseña no válida en su registro de errores incluso cuando se escribe la contraseña correcta.
Básicamente, ha encontrado el problema documentado en el artículo Errores de copia de seguridad de MasterKey de DPAPI cuando RWDC no está disponible. Microsoft ha cambiado el código de SSMS para las versiones 17.3 y futuras. Por lo tanto, si se encuentra este problema, el sistema notificará la excepción que se produce desde DPAPI para un diagnóstico mucho más sencillo.