LOGINPROPERTY (Transact-SQL)

Gilt für:SQL ServerAzure SQL Managed Instance

Gibt Informationen zu Richtlinieneinstellungen für die Anmeldung zurück.

Transact-SQL-Syntaxkonventionen

Syntax

LOGINPROPERTY ( 'login_name' , 'property_name' )  

Hinweis

Informationen zum Anzeigen der Transact-SQL-Syntax für SQL Server 2014 (12.x) und früher finden Sie unter Dokumentation zu früheren Versionen.

Argumente

login_name
Der Name einer SQL Server-Anmeldung, für die der Status der Anmeldungseigenschaften zurückgegeben wird.

propertyname
Ein Ausdruck, der die Eigenschafteninformationen enthält, die für die Anmeldung zurückgegeben werden sollen. Fürpropertyname sind die folgenden Werte möglich.

Wert BESCHREIBUNG
BadPasswordCount Gibt die Anzahl aufeinanderfolgender Anmeldeversuche mit einem falschen Kennwort zurück.
BadPasswordTime Gibt die Zeit des letzten Anmeldeversuchs mit einem falschen Kennwort zurück.
DaysUntilExpiration Gibt die Anzahl von Tagen zurück, bis das Kennwort abläuft.
DefaultDatabase Gibt die Standarddatenbank für die SQL Server-Anmeldung zurück, wie sie in den Metadaten gespeichert ist. Wenn keine Datenbank angegeben ist, wird master zurückgegeben. Gibt für nicht in SQL Server bereitgestellte Benutzer (z. B. von Windows authentifizierte Benutzer) NULL zurück.
DefaultLanguage Gibt die bei der Anmeldung angegebene Standardsprache zurück, wie sie in den Metadaten gespeichert ist. Gibt für nicht in SQL Server bereitgestellte Benutzer (z. B. von Windows authentifizierte Benutzer) NULL zurück.
HistoryLength Gibt die Anzahl der Kennwörter zurück, die für die Anmeldung mithilfe der Mechanismen zur Durchsetzung von Kennwortrichtlinien nachverfolgt werden. 0, wenn keine Kennwortrichtlinie erzwungen wird. 1, wenn die Kennwortrichtlinie wieder erzwungen wird.
IsExpired Gibt an, ob das Kennwort zu der Anmeldung abgelaufen ist.
IsLocked Gibt an, ob die Anmeldung gesperrt ist.
IsMustChange Gibt an, ob das Kennwort der Anmeldung beim nächsten Herstellen einer Verbindung geändert werden muss.
LockoutTime Gibt das Datum zurück, an dem die SQL Server-Anmeldung gesperrt wurde, weil die zulässige Anzahl fehlgeschlagener Anmeldeversuche überschritten wurde.
PasswordHash Gibt den Hash des Kennworts zurück.
PasswordLastSetTime Gibt das Datum zurück, an dem das aktuelle Kennwort festgelegt wurde.
PasswordHashAlgorithm Gibt den Algorithmus zurück, der zum Erstellen eines Hashwerts für das Kennwort verwendet wird.

Gibt zurück

Der Datentyp hängt vom angeforderten Wert ab.

IsLocked, IsExpired und IsMustChange weisen den Typ int auf.

  • 1, wenn sich die Anmeldung im angegebenen Status befindet.

  • 0, wenn sich die Anmeldung nicht im angegebenen Status befindet.

BadPasswordCount and HistoryLength weisen den Typ int auf.

BadPasswordTime, LockoutTime und PasswordLastSetTime weisen den Typ datetime auf.

PasswordHash weist den Typ varbinary auf.

NULL, wenn es sich bei der Anmeldung nicht um eine gültige SQL Server-Anmeldung handelt.

DaysUntilExpiration weist den Typ int auf.

  • 0, wenn die Anmeldung abgelaufen ist oder an dem Tag abläuft, an dem die Abfrage ausgeführt wird.

  • -1, wenn das Kennwort gemäß der lokalen Sicherheitsrichtlinie in Windows nie abläuft.

  • NULL, wenn CHECK_POLICY oder CHECK_EXPIRATION für eine Anmeldung auf OFF festgelegt ist oder wenn das Betriebssystem die Kennwortrichtlinie nicht unterstützt.

PasswordHashAlgorithm weist den Typ „int“ auf.

  • 0, wenn ein SQL7.0-Hash verwendet wird.

  • 1, wenn ein SHA-1-Hash verwendet wird.

  • 2, wenn ein SHA-2-Hash verwendet wird.

  • NULL, wenn es sich bei der Anmeldung nicht um eine gültige SQL Server-Anmeldung handelt.

Hinweise

Diese integrierte Funktion gibt Informationen zu den Kennwortrichtlinieneinstellungen einer SQL Server-Anmeldung zurück. Bei den Namen der Eigenschaften wird die Groß-/Kleinschreibung nicht beachtet. Somit sind Eigenschaftsnamen wie BadPasswordCount und badpasswordcount gleichwertig. Die Werte der Eigenschaften PasswordHash, PasswordHashAlgorithm und PasswordLastSetTime sind in allen unterstützten Konfigurationen von SQL Server verfügbar, die anderen Eigenschaften jedoch nur, wenn SQL Server unter Windows Server 2003 ausgeführt wird und CHECK_POLICY und CHECK_EXPIRATION aktiviert sind. Weitere Informationen finden Sie unter Password Policy.

Berechtigungen

Erfordert die VIEW-Berechtigung für die Anmeldung. Wenn der Kennworthash angefordert wird, ist auch die CONTROL SERVER-Berechtigung erforderlich.

Beispiele

A. Überprüfen, ob das Kennwort einer Anmeldung geändert werden muss

Im folgenden Beispiel wird überprüft, ob das Kennwort der SQL Server-Anmeldung von John3 geändert werden muss, wenn das nächste Mal unter diesem Anmeldenamen eine Verbindung mit einer Instanz von SQL Server hergestellt wird.

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

B. Überprüfen, ob eine Anmeldung gesperrt ist

Im folgenden Beispiel wird überprüft, ob die SQL Server-Anmeldung John3 gesperrt ist.

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

Weitere Informationen

CREATE LOGIN (Transact-SQL)
sys.server_principals (Transact-SQL)