LOGINPROPERTY (Transact-SQL)

Devuelve información sobre la configuración de la directiva de inicio de sesión.

Icono de vínculo a temasConvenciones 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 la propiedad que se va a devolver para el inicio de sesión. propertyname puede ser uno de los valores siguientes.

    Valor

    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 caduque 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 los 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, como los usuarios autenticados a través de Windows.

    HistoryLength

    Devuelve el tiempo durante el que se ha realizado un seguimiento del inicio de sesión con el sistema de aplicación de la directiva de contraseñas.

    IsExpired

    Devuelve información que indicará si el inicio de sesión ha caducado.

    IsLocked

    Devuelve información que indicará si el inicio de sesión está bloqueado.

    IsMustChange

    Devuelve información que indicará si se debe cambiar la contraseña del inicio de sesión 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.

Devuelve

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 es de tipo int.

BadPasswordTime, HistoryLength, LockoutTime y 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á caducado o si caducará 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 caduca.

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.

Notas

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 y PasswordLastSetTime están disponibles en todas las configuraciones compatibles de SQL Server, pero las demás propiedades sólo están disponibles cuando se ejecuta SQL Server en Windows Server 2003 y tanto CHECK_POLICY como CHECK_EXPIRATION están habilitadas. Para obtener más información, vea Directiva de contraseñas.

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