sql >> Databasteknik >  >> RDS >> Sqlserver

Ändra lösenordet för en SQL Server-inloggning

Den här artikeln visar hur du använder T-SQL för att ändra lösenordet för en SQL Server-inloggning.

Du kan ändra lösenordet för en annan inloggning (förutsatt att du har lämpliga behörigheter), eller så kan du ändra det för din egen inloggning. Den här artikeln beskriver båda dessa scenarier.

Exempel

För att ändra lösenordet för en SQL Server-inloggning, använd ALTER LOGIN uttalande med WITH PASSWORD argument.

Här är ett exempel.

ALTER LOGIN Bart
    WITH PASSWORD = '$trongPwd123';

Du kan köra det uttalandet för att ändra lösenordet för din egen inloggning eller annan inloggning, men det kräver att du har ALTER ANY LOGIN tillstånd.

Om du inte har ALTER ANY LOGIN behörighet får du detta felmeddelande:

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

Ändra ditt eget lösenord

Du kan använda uttalandet från föregående exempel för att ändra ditt eget inloggningslösenord (dvs. när du är inloggad som inloggning). Som nämnts behöver du ALTER ANY LOGIN tillstånd.

Du kan dock fortfarande ändra ditt eget lösenord även om du inte gör det ha ALTER ANY LOGIN tillstånd.

Sättet att göra detta är genom att inkludera ditt gamla lösenord såväl som det nya lösenordet.

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

Jag loggade faktiskt in som Bart och körde det uttalandet och fick följande bekräftelse.

Commands completed successfully.

Bart har faktiskt inte ALTER ANY LOGIN tillstånd, men han kunde fortfarande ändra sitt eget lösenord genom att ange sitt gamla lösenord.

Här är vad som händer om Bart försöker ändra lösenordet utan att ange det gamla lösenordet.

ALTER LOGIN Bart
    WITH PASSWORD = 'WheelyStwongPwd!';

Resultat:

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

Men som du kanske förväntar dig, om jag loggar in som sa och kör det igen, jag kan ändra det utan att ange det gamla lösenordet.

ALTER LOGIN Bart
    WITH PASSWORD = 'WheelyStwongPwd!';

Resultat:

Commands completed successfully.

  1. Lösningar för INFOGA ELLER UPPDATERA på SQL Server

  2. Vilken tidsseriedatabas är bättre:TimescaleDB vs InfluxDB

  3. Automatisk ökning på partiell primärnyckel med Entity Framework Core

  4. Antal rader som påverkas av en UPPDATERING i PL/SQL