sql >> Base de Datos >  >> RDS >> Sqlserver

Cambiar la contraseña para un inicio de sesión de SQL Server

Este artículo demuestra cómo usar T-SQL para cambiar la contraseña de un inicio de sesión de SQL Server.

Puede cambiar la contraseña para otro inicio de sesión (suponiendo que tenga los permisos adecuados), o puede cambiarla para su propio inicio de sesión. Este artículo describe ambos escenarios.

Ejemplo

Para cambiar la contraseña para un inicio de sesión de SQL Server, use ALTER LOGIN declaración con el WITH PASSWORD argumento.

He aquí un ejemplo.

ALTER LOGIN Bart
    WITH PASSWORD = '$trongPwd123';

Puede ejecutar esa declaración para cambiar la contraseña de su propio inicio de sesión o de otro inicio de sesión, sin embargo, requiere que tenga ALTER ANY LOGIN permiso.

Si no tiene ALTER ANY LOGIN permiso, obtendrá este error:

Msg 15151, Level 16, State 1, Line 2
Cannot alter the login 'Bart', because it does not exist or you do not have permission.

Cambie su propia contraseña

Puede usar la declaración del ejemplo anterior para cambiar su propia contraseña de inicio de sesión (es decir, cuando inicia sesión como inicio de sesión). Como se mencionó, necesitará ALTER ANY LOGIN permiso.

Sin embargo, aún puede cambiar su propia contraseña incluso si no tener ALTER ANY LOGIN permiso.

La forma de hacerlo es incluir su contraseña anterior y la nueva.

ALTER LOGIN Bart
    WITH PASSWORD = 'StrongPwd!'
    OLD_PASSWORD = '$trongPwd123';

De hecho, inicié sesión como Bart, ejecuté esa declaración y recibí la siguiente confirmación.

Commands completed successfully.

Bart en realidad no tiene ALTER ANY LOGIN permiso, pero aún podía cambiar su propia contraseña al proporcionar su contraseña anterior.

Esto es lo que sucede si Bart intenta cambiar la contraseña sin proporcionar la contraseña anterior.

ALTER LOGIN Bart
    WITH PASSWORD = 'WheelyStwongPwd!';

Resultado:

Msg 15151, Level 16, State 1, Line 1
Cannot alter the login 'Bart', because it does not exist or you do not have permission.

Pero como era de esperar, si inicio sesión como sa y ejecutarlo de nuevo, puedo cambiarlo sin proporcionar la contraseña anterior.

ALTER LOGIN Bart
    WITH PASSWORD = 'WheelyStwongPwd!';

Resultado:

Commands completed successfully.