Not
Åtkomst till denna sida kräver auktorisation. Du kan prova att logga in eller byta katalog.
Åtkomst till denna sida kräver auktorisation. Du kan prova att byta katalog.
gäller för:SQL Server
SQL Server kan använda mekanismer för Windows-lösenordsprinciper. Lösenordsprincipen gäller för en inloggning som använder SQL Server-autentisering och för en oberoende databasanvändare med lösenord.
SQL Server kan tillämpa samma komplexitets- och förfalloprinciper som används i Windows på lösenord som används i SQL Server. Den här funktionen beror på API:et NetValidatePasswordPolicy .
Anmärkning
Azure SQL Database tillämpar lösenordskomplexitet. Avsnitten för lösenordsförfallodatum och principtillämpning gäller inte för Azure SQL Database. Information om lösenordsprincip för Azure SQL Managed Instance finns i våra vanliga frågor och svar om SQL Managed Instance.
Lösenordskomplexitet
Principer för lösenordskomplexitet är utformade för att förhindra råstyrkeattacker genom att öka antalet möjliga lösenord. När principen för lösenordskomplexitet tillämpas måste nya lösenord uppfylla följande riktlinjer:
Lösenordet innehåller inte användarens kontonamn.
Lösenordet är minst åtta tecken långt.
Lösenordet innehåller tecken från tre av följande fyra kategorier:
- Latinska stora bokstäver (
Atill och medZ) - Latinska gemener (
atill och medz) - Bas 10 siffror (
0till och med9) - Icke-numeriska tecken, till exempel: utropstecken (
!), dollartecken ($), taltecken (#) eller procent (%).
- Latinska stora bokstäver (
Lösenord kan vara upp till 128 tecken långa. Använd lösenord som är så långa och komplexa som möjligt.
Lösenordet upphör att gälla
Principer för förfallotid för lösenord används för att hantera livslängden för ett lösenord. När SQL Server tillämpar principen för lösenordsförfallotid påminns användarna om att ändra gamla lösenord och konton som har utgångna lösenord inaktiveras.
Regeltillämpning
Tillämpningen av lösenordsprincipen kan konfigureras separat för varje SQL Server-inloggning. Använd ALTER LOGIN för att konfigurera alternativen för lösenordsprinciper för en SQL Server-inloggning. Följande regler gäller för konfigurationen av tvingande lösenordsprinciper:
När
CHECK_POLICYändras tillONinträffar följande beteenden:-
CHECK_EXPIRATIONär också inställt påONsåvida det inte uttryckligen sätts tillOFF. - Lösenordshistoriken initieras med värdet för den aktuella lösenordshashen.
- Varaktighet för kontoutelåsning, tröskelvärde för kontoutelåsning och återställning av kontoutelåsningsräknare efter har också aktiverats.
-
När
CHECK_POLICYändras tillOFFinträffar följande beteenden:-
CHECK_EXPIRATIONär också inställt påOFF. - Lösenordshistoriken rensas.
- Värdet för
lockout_timeåterställs.
-
Vissa kombinationer av principalternativ stöds inte.
Om
MUST_CHANGEanges måsteCHECK_EXPIRATIONochCHECK_POLICYsättas tillON. Annars misslyckas -instruktionen.Om
CHECK_POLICYär inställt påOFFkanCHECK_EXPIRATIONinte ställas in påON. EnALTER LOGINinstruktion som har den här kombinationen av alternativ misslyckas.Inställningen
CHECK_POLICY = ONförhindrar att lösenord skapas som:- Null eller tomt
- Samma som namnet på datorn eller inloggningen
- Något av följande:
password,admin,administrator, ,sasysadmin
Säkerhetsprincipen kan anges i Windows eller tas emot från domänen. Om du vill visa lösenordspolicyn på datorn använder du Lokal säkerhetspolicy MMC-snapin-modul (secpol.msc).
Anmärkning
För SQL Server-inloggningar som har CHECK_POLICY aktiverats, om du kör ALTER LOGIN och inte tar med OLD_PASSWORD i kommandot för att ändra lösenordet, ignoreras Framtvinga lösenordshistorik . Detta är ett avsiktligt beteende för att tillåta lösenordsåterställning, trots tidigare använda lösenord. Andra kontroller som är associerade med CHECK_POLICY, inklusive längd och komplexitet, som kontrolleras oavsett om OLD_PASSWORD används.
Granska SQL-serverns lösenordspolicynformation
Du kan granska över principer för SQL-användarlösenord och förfallodatum för SQL Server med följande fråga. Även om följande fråga också fungerar i Azure SQL Database tillämpas endast lösenordskomplexitet i Azure SQL Database.
SELECT name,
is_policy_checked,
is_expiration_checked,
LOGINPROPERTY(name, 'IsMustChange') AS IsMustChange,
LOGINPROPERTY(name, 'IsLocked') AS IsLocked,
LOGINPROPERTY(name, 'LockoutTime') AS LockoutTime,
LOGINPROPERTY(name, 'PasswordLastSetTime') AS PasswordLastSetTime,
LOGINPROPERTY(name, 'IsExpired') AS IsExpired,
LOGINPROPERTY(name, 'BadPasswordCount') AS BadPasswordCount,
LOGINPROPERTY(name, 'BadPasswordTime') AS BadPasswordTime,
LOGINPROPERTY(name, 'HistoryLength') AS HistoryLength,
modify_date
FROM sys.sql_logins;
Relaterade uppgifter
- SKAPA ANVÄNDARKONTO
- ÄNDRA INLOGGNING
- SKAPA ANVÄNDARE
- ALTER USER
- Skapa ett konto
- Skapa en databasanvändare