Sqlserver
 sql >> Base de Dados >  >> RDS >> Sqlserver

Alterar a senha para um logon do SQL Server


Este artigo demonstra como usar o T-SQL para alterar a senha de um logon do SQL Server.

Você pode alterar a senha para outro login (supondo que tenha as permissões apropriadas) ou pode alterá-la para seu próprio login. Este artigo descreve ambos os cenários.

Exemplo


Para alterar a senha de um login do SQL Server, use o ALTER LOGIN declaração com o WITH PASSWORD argumento.

Aqui está um exemplo.
ALTER LOGIN Bart
    WITH PASSWORD = '$trongPwd123';

Você pode executar essa instrução para alterar a senha do seu próprio login ou de outro login, no entanto, requer que você tenha ALTER ANY LOGIN permissão.

Se você não tiver ALTER ANY LOGIN permissão, você receberá este erro:
Msg 15151, Level 16, State 1, Line 2
Cannot alter the login 'Bart', because it does not exist or you do not have permission.

Alterar sua própria senha


Você pode usar a instrução do exemplo anterior para alterar a senha do seu próprio login (ou seja, quando estiver logado como login). Como mencionado, você precisará de ALTER ANY LOGIN permissão.

No entanto, você ainda pode alterar sua própria senha, mesmo que não tem ALTER ANY LOGIN permissão.

A maneira de fazer isso é incluindo sua senha antiga, bem como a nova senha.
ALTER LOGIN Bart
    WITH PASSWORD = 'StrongPwd!'
    OLD_PASSWORD = '$trongPwd123';

Na verdade, eu entrei como Bart e executei essa declaração e recebi a seguinte confirmação.
Commands completed successfully.

Bart na verdade não tem ALTER ANY LOGIN permissão, mas ele ainda foi capaz de alterar sua própria senha fornecendo sua senha antiga.

Aqui está o que acontece se Bart tentar alterar a senha sem fornecer a senha antiga.
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.

Mas, como você pode esperar, se eu fizer login como sa e executá-lo novamente, posso alterá-lo sem fornecer a senha antiga.
ALTER LOGIN Bart
    WITH PASSWORD = 'WheelyStwongPwd!';

Resultado:
Commands completed successfully.