LOGINPROPERTY (Transact-SQL)

Si applica a:SQL Server Istanza gestita di SQL di Azure

Restituisce informazioni sulle impostazioni relative ai criteri di gestione degli account di accesso.

Convenzioni di sintassi Transact-SQL

Sintassi

LOGINPROPERTY ( 'login_name' , 'property_name' )  

Nota

Per visualizzare la sintassi Transact-SQL per SQL Server 2014 (12.x) e versioni precedenti, vedere la documentazione delle versioni precedenti.

Argomenti

login_name
Nome di un account di accesso di SQL Server per cui verrà restituito lo stato delle proprietà di accesso.

propertyname
Espressione contenente le informazioni sulle proprietà da restituire per l'account di accesso. propertyname può essere uno dei valori seguenti.

Valore Descrizione
BadPasswordCount Restituisce il numero di tentativi consecutivi di accesso con una password non corretta.
BadPasswordTime Restituisce l'ora dell'ultimo tentativo di accesso con password non corretta.
DaysUntilExpiration Restituisce il numero di giorni che mancano alla scadenza della password.
DefaultDatabase Restituisce il database predefinito dell'account di accesso di SQL Server archiviato nei metadati oppure il database master se non è specificato alcun database. Restituisce NULL per gli utenti non SQL Server di cui è stato effettuato il provisioning, ad esempio utenti autenticati di Windows.
DefaultLanguage Restituisce la lingua predefinita dell'account di accesso archiviata nei metadati. Restituisce NULL per gli utenti non SQL Server di cui è stato effettuato il provisioning, ad esempio utenti autenticati di Windows.
HistoryLength Restituisce il numero di password rilevate per l'account di accesso, utilizzando il meccanismo di applicazione dei criteri password. 0 se i criteri password non vengono applicati. La ripresa dell'applicazione dei criteri password verrà riavviata da 1.
IsExpired Indica se la password dell'account di accesso è scaduta.
IsLocked Indica se l'account di accesso è bloccato.
IsMustChange Indica se la password dell'account di accesso deve essere modificata alla connessione successiva.
LockoutTime Restituisce la data di blocco dell'account di accesso di SQL Server a causa del superamento del numero consentito di tentativi di accesso non riusciti.
PasswordHash Restituisce l'hash della password.
PasswordLastSetTime Restituisce la data di impostazione della password corrente.
PasswordHashAlgorithm Restituisce l'algoritmo utilizzato per l'hash della password.

Valori restituiti

Il tipo di dati dipende dal valore richiesto.

IsLocked, IsExpired e IsMustChange sono di tipo int.

  • 1 se l'account di accesso si trova nello stato specificato.

  • 0 se l'account di accesso non si trova nello stato specificato.

BadPasswordCount e HistoryLength sono di tipo int.

BadPasswordTime, LockoutTime, PasswordLastSetTime sono di tipo datetime.

PasswordHash è di tipo varbinary.

NULL se l'account di accesso non è un account di accesso di SQL Server valido.

DaysUntilExpiration è di tipo int.

  • 0 se l'account di accesso è scaduto o se scadrà nel giorno in cui si esegue la query.

  • -1 se i criteri di sicurezza locale in Windows non prevedono mai la scadenza della password.

  • NULL se l'opzione CHECK_POLICY o CHECK_POICY_EXPIRATION è impostata su OFF per un account di accesso o se il sistema operativo non supporta i criteri password.

PasswordHashAlgorithm è di tipo int.

  • 0 se hash SQL7.0

  • 1 se hash SHA-1

  • 2 se hash SHA-2

  • NULL se l'account di accesso non è un account di accesso di SQL Server valido

Osservazioni:

Questa funzione predefinita restituisce informazioni sulle impostazioni relative ai criteri password per un account di accesso di SQL Server. Poiché i nomi delle proprietà non supportano la distinzione tra maiuscole e minuscole, BadPasswordCount e badpasswordcount sono equivalenti. I valori delle proprietà PasswordHash, PasswordHashAlgorithm e PasswordLastSetTime sono disponibili in tutte le configurazioni supportate di SQL Server, mentre le altre proprietà sono disponibili solo se SQL Server è in esecuzione in Windows Server 2003 e se sono abilitate entrambe le opzioni CHECK_POLICY e CHECK_EXPIRATION. Per ulteriori informazioni, vedere Password Policy.

Autorizzazioni

È richiesta l'autorizzazione VIEW per l'account di accesso. Se si richiede l'hash della password, è inoltre richiesta l'autorizzazione CONTROL SERVER.

Esempi

R. Verifica della necessità di modificare la password di un account di accesso

Nell'esempio seguente viene controllato se la password dell'account di accesso John3 di SQL Server deve essere modificata alla connessione successiva a un'istanza di SQL Server.

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

B. Controllo dell'eventuale blocco di un account di accesso

Nell'esempio seguente viene controllato se l'account di accesso John3 di SQL Server è bloccato.

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

Vedi anche

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