Sdílet prostřednictvím


LOGINPROPERTY (Transact-SQL)

platí pro:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse Analyticssql database v Microsoft Fabric

Vrátí informace o nastavení zásad přihlášení.

Transact-SQL konvence syntaxe

Syntaxe

LOGINPROPERTY ( 'login_name' , 'property_name' )

Argumenty

login_name

Název přihlášení k SQL Serveru, pro který se vrátí stav přihlašovací vlastnosti.

propertyname

Výraz, který obsahuje informace o vlastnosti, které mají být vráceny pro přihlášení. propertyname může být jedna z následujících hodnot.

Hodnota Popis
BadPasswordCount Vrátí počet po sobě jdoucích pokusů o přihlášení pomocí nesprávného hesla.
BadPasswordTime Vrátí čas posledního pokusu o přihlášení pomocí nesprávného hesla.
DaysUntilExpiration Vrátí počet dní do vypršení platnosti hesla.
DefaultDatabase Vrátí výchozí databázi přihlášení k SQL Serveru jako uloženou v metadatech nebo master pokud není zadána žádná databáze. Vrátí hodnotu NULL pro uživatele, kteří nejsou zřízeni SQL Serverem (například ověření uživatelé Windows).
DefaultLanguage Vrátí výchozí jazyk přihlášení uložený v metadatech. Vrátí hodnotu NULL pro uživatele, kteří nejsou zřízeni sql Serverem, například ověřené uživatele systému Windows.
Historie Vrátí počet hesel sledovaných pro přihlášení pomocí mechanismu vynucení zásad hesel. 0, pokud se zásady hesel nevynucuje. Obnovení vynucení zásad hesel se restartuje na 1.
IsExpired Určuje, jestli vypršela platnost hesla pro přihlášení.
IsLocked Určuje, jestli je přihlášení uzamčené.
IsMustChange Určuje, jestli musí přihlášení při příštím připojení změnit heslo.
LockoutTime Vrátí datum uzamčení přihlášení k SQL Serveru, protože překročil povolený počet neúspěšných pokusů o přihlášení.
PasswordHash Vrátí hodnotu hash hesla.
PasswordLastSetTime Vrátí datum, kdy bylo nastaveno aktuální heslo.
PasswordHashAlgorithm Vrátí algoritmus použitý k hash hesla. V SYSTÉMU SQL Server 2022 (16.x) a starších verzích se uložené informace o hesle počítají pomocí sha-512 solného hesla. Od SQL Server 2025 (17.x) se používá iterovaný hashovací algoritmus RFC2898 (PBKDF). První bajt hashe označuje verzi: 0x02 pro verzi 2 (SQL Server 2022 (16.x) a starší verze) a 0x03 pro verzi 3 (SQL Server 2025 (17.x) a pozdější verze).

Návraty

Datový typ závisí na požadované hodnotě.

IsLocked, IsExpired a IsMustChange jsou typu int.

  • 1, pokud je přihlášení v zadaném stavu.

  • 0, pokud přihlášení není v zadaném stavu.

BadPasswordCount a HistoryLength jsou typu int.

BadPasswordTime, LockoutTime, PasswordLastSetTime jsou typu datetime.

PasswordHash je typu varbinary.

Null, pokud přihlášení není platným přihlášením k SQL Serveru.

DaysUntilExpiration je typu int.

  • 0, pokud vypršela platnost přihlášení nebo pokud vyprší dne, kdy se dotazuje.

  • -1, pokud místní zásady zabezpečení ve Windows nikdy nevyprší heslo.

  • Hodnota NULL, pokud je CHECK_POLICY nebo CHECK_EXPIRATION pro přihlášení vypnutá nebo pokud operační systém nepodporuje zásady hesel.

PasswordHashAlgorithm je typu int.

  • 0, pokud hodnota hash SQL7.0

  • 1, pokud hodnota hash SHA-1

  • 2, pokud hodnota hash SHA-2

  • NULL, pokud přihlášení není platné přihlášení k SQL Serveru

Poznámky

Tato integrovaná funkce vrací informace o nastavení zásad hesel pro přihlášení k SQL Serveru. Názvy vlastností nerozlišují malá a velká písmena, takže názvy vlastností, jako jsou BadPasswordCount a badpasswordcount , jsou ekvivalentní. Hodnoty vlastností PasswordHash, PasswordHashAlgorithm a PasswordLastSetTime jsou k dispozici ve všech podporovaných konfiguracích SQL Serveru, ale ostatní vlastnosti jsou k dispozici pouze v případě, že SQL Server běží v systému Windows Server 2003 a jsou povoleny CHECK_POLICY i CHECK_EXPIRATION. Další informace najdete v tématu Zásady pro hesla.

Povolení

Vyžaduje oprávnění VIEW pro přihlášení. Při vyžádání hodnoty hash hesla vyžaduje také oprávnění CONTROL SERVER.

Příklady

A. Kontrola, jestli přihlašovací jméno musí změnit heslo

Následující příklad zkontroluje, jestli přihlášení John3 k SQL Serveru musí změnit heslo při příštím připojení k instanci SQL Serveru.

SELECT LOGINPROPERTY('John3', 'IsMustChange');
GO

B. Kontrola uzamčení přihlášení

Následující příklad zkontroluje, jestli je uzamčeno přihlášení John3 k SQL Serveru.

SELECT LOGINPROPERTY('John3', 'IsLocked');
GO