Udostępnij za pomocą


LOGINPROPERTY (Transact-SQL)

Dotyczy:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsSQL database w usłudze Microsoft Fabric

Zwraca informacje o ustawieniach zasad logowania.

Transact-SQL konwencje składni

Składnia

LOGINPROPERTY ( 'login_name' , 'property_name' )

Argumenty (w programowaniu)

login_name

Nazwa logowania programu SQL Server, dla którego zostanie zwrócony stan właściwości logowania.

propertyname

Wyrażenie zawierające informacje o właściwości, które mają zostać zwrócone dla identyfikatora logowania. propertyname może być jedną z następujących wartości.

Wartość Opis
BadPasswordCount Zwraca liczbę kolejnych prób zalogowania się przy użyciu nieprawidłowego hasła.
BadPasswordTime Zwraca czas ostatniej próby zalogowania się przy użyciu nieprawidłowego hasła.
DaysUntilExpiration Zwraca liczbę dni, po których hasło wygaśnie.
DefaultDatabase Zwraca domyślną bazę danych logowania programu SQL Server przechowywaną w metadanych lub master jeśli nie określono żadnej bazy danych. Zwraca wartość NULL dla użytkowników nieprowizowanych programu SQL Server (na przykład uwierzytelnionych użytkowników systemu Windows).
DefaultLanguage Zwraca domyślny język logowania przechowywany w metadanych. Zwraca wartość NULL dla użytkowników nieprowizowanych przez program SQL Server, na przykład użytkowników uwierzytelnionych w systemie Windows.
HistoriaLength Zwraca liczbę haseł śledzonych podczas logowania przy użyciu mechanizmu wymuszania zasad haseł. 0, jeśli zasady haseł nie są wymuszane. Ponowne uruchamianie wymuszania zasad haseł o godzinie 1.
IsExpired Wskazuje, czy hasło logowania wygasło.
IsLocked Wskazuje, czy logowanie jest zablokowane.
IsMustChange Wskazuje, czy nazwa logowania musi zmienić hasło przy następnym nawiązaniu połączenia.
LockoutTime Zwraca datę zablokowania logowania programu SQL Server, ponieważ przekroczyła dozwoloną liczbę nieudanych prób logowania.
PasswordHash Zwraca skrót hasła.
PasswordLastSetTime Zwraca datę ustawienia bieżącego hasła.
PasswordHashAlgorithm Zwraca algorytm używany do wyznaczania wartości skrótu hasła. W programie SQL Server 2022 (16.x) i starszych wersjach przechowywane informacje o hasłach są obliczane przy użyciu algorytmu SHA-512 hasła. Począwszy od SQL Server 2025 (17.x), stosowany jest iterowany algorytm skrótu RFC2898 (PBKDF). Pierwszy bajt skrótu wskazuje wersję: 0x02 dla wersji 2 (SQL Server 2022 (16.x) i wcześniejszych) oraz 0x03 dla wersji 3 (SQL Server 2025 (17.x) i późniejszych wersji).

Zwraca

Typ danych zależy od żądanej wartości.

IsLocked, IsExpired i IsMustChange są typu int.

  • 1, jeśli identyfikator logowania jest w określonym stanie.

  • 0, jeśli nazwa logowania nie jest w określonym stanie.

BadPasswordCount i HistoryLength są typu int.

BadPasswordTime, LockoutTime, PasswordLastSetTime są typu data/godzina.

PasswordHash jest typu varbinary.

Wartość NULL, jeśli logowanie nie jest prawidłowym identyfikatorem logowania programu SQL Server.

DaysUntilExpiration jest typu int.

  • 0, jeśli nazwa logowania wygasła lub czy wygaśnie w dniu, w których zostanie zwrócona kwerenda.

  • -1, jeśli lokalne zasady zabezpieczeń w systemie Windows nigdy nie wygasają hasło.

  • Wartość NULL, jeśli CHECK_POLICY lub CHECK_EXPIRATION jest wyłączona na potrzeby logowania, lub jeśli system operacyjny nie obsługuje zasad haseł.

PasswordHashAlgorithm jest typu int.

  • 0, jeśli skrót SQL7.0

  • 1, jeśli skrót SHA-1

  • 2, jeśli skrót SHA-2

  • Wartość NULL, jeśli logowanie nie jest prawidłowym identyfikatorem logowania programu SQL Server

Uwagi

Ta wbudowana funkcja zwraca informacje o ustawieniach zasad haseł logowania programu SQL Server. Nazwy właściwości nie są uwzględniane wielkości liter, więc nazwy właściwości, takie jak BadPasswordCount i badpasswordcount , są równoważne. Wartości właściwości PasswordHash, PasswordHashAlgorithm i PasswordLastSetTime są dostępne we wszystkich obsługiwanych konfiguracjach programu SQL Server, ale inne właściwości są dostępne tylko wtedy, gdy program SQL Server jest uruchomiony w systemie Windows Server 2003, a zarówno CHECK_POLICY, jak i CHECK_EXPIRATION są włączone. Aby uzyskać więcej informacji, zobacz politykę haseł.

Uprawnienia

Wymaga uprawnień VIEW podczas logowania. Podczas żądania skrótu hasła wymagane jest również uprawnienie CONTROL SERVER.

Przykłady

Odp. Sprawdzanie, czy logowanie musi zmienić hasło

Poniższy przykład sprawdza, czy logowanie John3 do programu SQL Server musi zmienić hasło przy następnym połączeniu z wystąpieniem programu SQL Server.

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

B. Sprawdzanie, czy logowanie jest zablokowane

Poniższy przykład sprawdza, czy logowanie do programu John3 SQL Server jest zablokowane.

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