Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
platí pro:SQL Server
SQL Server může používat mechanismy zásad hesla systému Windows. Zásady hesel platí pro přihlášení, které používá ověřování SQL Serveru a uživatele databáze s omezením s heslem.
SQL Server může použít stejné zásady složitosti a vypršení platnosti, které se ve Windows používají pro hesla použitá v SQL Serveru. Tato funkce závisí na NetValidatePasswordPolicy rozhraní API.
Poznámka:
Azure SQL Database vynucuje složitost hesel. Oddíly vypršení platnosti hesla a vynucení zásad se nevztahují na službu Azure SQL Database. Informace o zásadách hesel pro službu Azure SQL Managed Instance najdete v nejčastějších dotazech ke službě SQL Managed Instance.
Složitost hesla
Zásady složitosti hesel jsou navržené tak, aby odstrašily útoky hrubou silou zvýšením počtu možných hesel. Při vynucení zásad složitosti hesel musí nová hesla splňovat následující pokyny:
Heslo neobsahuje název účtu uživatele.
Heslo je minimálně osm znaků dlouhé.
Heslo obsahuje znaky ze tří z následujících čtyř kategorií:
- Velká písmena latinky (
AažZ) - Malá písmena latinky (
aažz) - Základ 10 číslic (
0až9) - Neosamocené znaky, například: vykřičník (
!), znak dolaru ($), znak čísla (#) nebo procenta (%).
- Velká písmena latinky (
Hesla můžou mít délku až 128 znaků. Používejte hesla, která jsou co nejdéle a složitá.
Vypršení platnosti hesla
Zásady vypršení platnosti hesla slouží ke správě životnosti hesla. Když SQL Server vynucuje zásady vypršení platnosti hesla, uživatelům se připomene, že změní stará hesla a účty, jejichž platnost vypršela, jsou zakázaná.
Vynucení zásad
Vynucení zásad hesel je možné nakonfigurovat samostatně pro každé přihlášení k SQL Serveru. Pomocí příkazu ALTER LOGIN nakonfigurujte možnosti zásad hesel pro přihlášení k SQL Serveru. Pro konfiguraci vynucení zásad hesel platí následující pravidla:
Když
CHECK_POLICYse změní naON, dojde k následujícímu chování:-
CHECK_EXPIRATIONje také nastavena naONpokud není explicitně nastavena naOFF. - Historie hesel se inicializuje s hodnotou aktuální hodnoty hash hesla.
- Doba trvání uzamčení účtu, prahová hodnota uzamčení účtu a resetování čítače uzamčení účtu po jsou také povoleny.
-
Když
CHECK_POLICYse změní naOFF, dojde k následujícímu chování:-
CHECK_EXPIRATIONje také nastaveno naOFFhodnotu. - Historie hesel se vymaže.
- Hodnota
lockout_timeje resetována.
-
Některé kombinace možností zásad se nepodporují.
Pokud je specifikováno
MUST_CHANGE, musí býtCHECK_EXPIRATIONaCHECK_POLICYnastaveny naON. Jinak příkaz selže.Pokud je
CHECK_POLICYnastaveno naOFF,CHECK_EXPIRATIONnelze nastavit naON. PříkazALTER LOGIN, který má tuto kombinaci možností, selže.Nastavení
CHECK_POLICY = ONbrání vytváření hesel, která jsou:- Null nebo prázdné
- Stejné jako název počítače nebo přihlášení
- Některá z následujících možností:
password,admin,administrator,sa,sysadmin
Zásady zabezpečení můžou být nastavené ve Windows nebo můžou být přijaty z domény. Pokud chcete zobrazit zásady hesla na počítači, použijte snap-in modul konzoly MMC Místní zásady zabezpečení (secpol.msc).
Poznámka:
Pokud jsou pro přihlášení SQL Serveru povolena CHECK_POLICY a spustíte ALTER LOGIN bez zahrnutí OLD_PASSWORD do příkazu ke změně hesla, bude ignorováno vynucení historie hesel. Jedná se o chování podle návrhu, které umožňuje resetování hesla bez ohledu na všechna dříve použitá hesla. Jiné kontroly spojené s CHECK_POLICY, včetně délky a složitosti, jsou kontrolovány bez ohledu na to, zda OLD_PASSWORD se používá.
Kontrola informací o zásadách hesel uživatele SQL
Pomocí následujícího dotazu můžete zkontrolovat zásady hesel a data vypršení platnosti uživatelského hesla SQL na SQL Serveru. I když následující dotaz funguje také ve službě Azure SQL Database, vynucuje se v Azure SQL Database pouze složitost hesla.
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;
Související úkoly
- VYTVOŘIT PŘIHLÁŠENÍ
- ALTER LOGIN
- VYTVOŘIT UŽIVATELE
- ALTER USER
- Vytvoření přihlášení
- Vytvoření uživatele databáze