LOGINPROPERTY (Transact-SQL)
Se aplica a: SQL Server Azure SQL Managed Instance
Devuelve información sobre la configuración de la directiva de inicio de sesión.
Convenciones de sintaxis de Transact-SQL
Sintaxis
LOGINPROPERTY ( 'login_name' , 'property_name' )
Argumentos
login_name
Es el nombre de un inicio de sesión de SQL Server para el que se devolverá el estado de la propiedad login.
propertyname
Es una expresión que contiene la información de propiedad que se va a devolver para el inicio de sesión. propertyname puede ser uno de los valores siguientes.
Value | Descripción |
---|---|
BadPasswordCount | Devuelve el número de intentos consecutivos de inicio de sesión con una contraseña incorrecta. |
BadPasswordTime | Devuelve la hora del último intento de inicio de sesión con una contraseña incorrecta. |
DaysUntilExpiration | Devuelve el número de días que faltan para que expire la contraseña. |
DefaultDatabase | Devuelve la base de datos predeterminada de inicio de sesión de SQL Server tal y como se almacena en los metadatos, o master si no se ha especificado ninguna base de datos. Devuelve NULL para los usuarios que no se han autenticado a través de SQL Server (por ejemplo, usuarios autenticados a través de Windows). |
DefaultLanguage | Devuelve el idioma predeterminado de inicio de sesión tal y como se almacena en los metadatos. Devuelve NULL para los usuarios que no se han autenticado a través de SQL Server; por ejemplo, usuarios autenticados a través de Windows. |
HistoryLength | Devuelve el número de contraseñas comprobadas para el inicio de sesión con el mecanismo de imposición de la directiva de contraseñas. 0 si la directiva de contraseñas no se exige. La exigencia de aplicar la directiva de contraseñas se vuelve a iniciar con 1. |
IsExpired | Indica si la contraseña de inicio de sesión ha expirado. |
IsLocked | Indica si el inicio de sesión está bloqueado. |
IsMustChange | Indica si el inicio de sesión debe cambiar la contraseña la próxima vez que se conecte. |
LockoutTime | Devuelve la fecha en la que se bloqueó el inicio de sesión de SQL Server por haber superado el número permitido de intentos de inicio de sesión erróneos. |
PasswordHash | Devuelve el hash de la contraseña. |
PasswordLastSetTime | Devuelve la fecha en la que se estableció la contraseña actual. |
PasswordHashAlgorithm | Devuelve el algoritmo de hash utilizado para la contraseña. |
Devoluciones
El tipo de datos depende del valor solicitado.
IsLocked, IsExpired e IsMustChange son de tipo int.
1 si el inicio de sesión está en el estado especificado.
0 si el inicio de sesión está en el estado especificado.
BadPasswordCount e HistoryLength son de tipo int.
BadPasswordTime, LockoutTime, PasswordLastSetTime son de tipo datetime.
PasswordHash es de tipo varbinary.
NULL si el inicio de sesión no es un inicio de sesión de SQL Server válido.
DaysUntilExpiration es de tipo int.
0 si el inicio de sesión está expirado o si expirará en el día en que se hace la consulta.
-1 si la directiva de seguridad local de Windows determina que la contraseña nunca expira.
NULL si se ha desactivado CHECK_POLICY o CHECK_EXPIRATION para un inicio de sesión, o si el sistema operativo no admite la directiva de contraseñas.
PasswordHashAlgorithm es de tipo int.
0 si es un hash SQL7.0
1 si es un hash SHA-1
2 si es un hash SHA-2
NULL si el inicio de sesión no es un inicio de sesión de SQL Server válido.
Comentarios
Esta función integrada devuelve información sobre la configuración de la directiva de contraseñas de un inicio de sesión de SQL Server. Los nombres de las propiedades no distinguen mayúsculas de minúsculas, por lo que nombres de propiedades como BadPasswordCount y badpasswordcount son equivalentes. Los valores de las propiedades PasswordHash, PasswordHashAlgorithm y PasswordLastSetTime están disponibles en todas las configuraciones compatibles de SQL Server, pero las demás propiedades solo están disponibles cuando SQL Server se ejecuta en Windows Server 2003 y tanto CHECK_POLICY como CHECK_EXPIRATION están habilitadas. Para obtener más información, vea Password Policy.
Permisos
Requiere permiso VIEW en el inicio de sesión. También se necesita permiso CONTROL SERVER para solicitar el hash de contraseña.
Ejemplos
A. Comprobar si se debe cambiar la contraseña de un inicio de sesión
En el ejemplo siguiente se comprueba si el inicio de sesión John3
de SQL Server debe cambiar la contraseña la próxima vez que se conecte a una instancia de SQL Server.
SELECT LOGINPROPERTY('John3', 'IsMustChange');
GO
B. Comprobar si un inicio de sesión está bloqueado
En el ejemplo siguiente se comprueba si el inicio de sesión John3
de SQL Server está bloqueado.
SELECT LOGINPROPERTY('John3', 'IsLocked');
GO
Consulte también
CREATE LOGIN (Transact-SQL)
sys.server_principals (Transact-SQL)