Freigeben über


LOGINPROPERTY (Transact-SQL)

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

Themenlink (Symbol)Transact-SQL-Syntaxkonventionen

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