LOGINPROPERTY (Transact-SQL)
Gibt Informationen zu Richtlinieneinstellungen für die Anmeldung zurück.
Syntax
LOGINPROPERTY ( 'login_name' , 'property_name' )
Argumente
login_name.
Der Name einer SQL Server-Anmeldung, für die der Status der Anmeldungseigenschaften zurückgegeben wird.propertyname
Ein Ausdruck, der die für die Anmeldung zurückzugebenden Eigenschafteninformationen enthält. Für propertyname sind folgende Werte möglich.Wert
Beschreibung
BadPasswordCount
Gibt die Anzahl aufeinander folgender 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 Länge der Zeit zurück, in der die Anmeldung mithilfe der Mechanismen zur Durchsetzung von Kennwortrichtlinien nachverfolgt wurde.
IsExpired
Gibt Informationen darüber zurück, ob die Anmeldung abgelaufen ist.
IsLocked
Gibt Informationen darüber zurück, ob die Anmeldung gesperrt ist.
IsMustChange
Gibt Informationen darüber zurück, ob das Anmeldekennwort bei der nächsten Verbindung geändert werden muss.
LockoutTime
Gibt das Datum zurück, an dem die SQL Server-Anmeldung gesperrt wurde, da 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.
Rückgabewert
Der Datentyp hängt vom angeforderten Wert ab.
IsLocked, IsExpired und IsMustChange sind vom Typ int.
1, wenn sich die Anmeldung im angegebenen Status befindet.
0, wenn sich die Anmeldung nicht im angegebenen Status befindet.
BadPasswordCount ist vom Typ int.
BadPasswordTime, HistoryLength, LockoutTime und PasswordLastSetTime sind vom Typ datetime.
PasswordHash ist vom Typ varbinary.
NULL, wenn es sich bei der Anmeldung nicht um eine gültige SQL Server-Anmeldung handelt.
DaysUntilExpiration ist vom Typ int.
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.
Hinweise
Diese integrierte Funktion gibt Informationen zu den Kennwortrichtlinien-Einstellungen 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 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 Kennwortrichtlinie.
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 des SQL Server-Anmeldenamens 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 der SQL Server-Anmeldename John3 gesperrt ist.
SELECT LOGINPROPERTY('John3', 'IsLocked');
GO
Siehe auch