Compartir a través de


xp_logininfo (Transact-SQL)

Se aplica a:SQL Server

Devuelve información sobre usuarios y grupos de Windows.

Convenciones de sintaxis de Transact-SQL

Sintaxis

xp_logininfo [ [ @acctname = ] 'account_name' ]
     [ , [ @option = ] 'all' | 'members' ]
     [ , [ @privilege = ] 'variable_name' OUTPUT ]

Argumentos

[ @acctname = ] '@acctname'

Nombre de un usuario o grupo de Windows al que se concedió acceso a SQL Server. @acctname es sysname, con un valor predeterminado de NULL. Si no se especifica @acctname, se notifican todos los grupos de Windows y los usuarios de Windows a los que se concede explícitamente el permiso de inicio de sesión. @acctname deben estar completos. Por ejemplo, CONTOSO\macraes o BUILTIN\Administrators.

[ @option = ] 'all' | 'miembros'

Especifica si se presenta información de todas las rutas de acceso a permisos de la cuenta o si se presenta información de los miembros del grupo de Windows. @option es varchar(10), con un valor predeterminado de NULL. A menos que all se especifique, solo se muestra la primera ruta de acceso de permiso.

[ @privilege = ] 'variable_name' OUTPUT

Parámetro de salida que devuelve el nivel de privilegio de la cuenta de Windows especificada. @privilege es varchar(10), con un valor predeterminado de Not wanted. El nivel de privilegio devuelto es user, admino null.

Cuando OUTPUT se especifica, esta opción coloca @privilege en el parámetro de salida.

Valores de código de retorno

0 (correcto) o 1 (erróneo).

Conjunto de resultados

Nombre de la columna Tipo de datos Descripción
account name sysname Nombre completo de la cuenta de Windows.
type char(8) Tipo de cuenta de Windows. Los valores válidos son user y group.
privilege char(9) Privilegio de acceso para SQL Server. Los valores válidos son admin, user o NULL.
mapped login name sysname En el caso de las cuentas de usuario con privilegios de usuario, mapped login name muestra el nombre de inicio de sesión asignado que SQL Server intenta usar al iniciar sesión con esta cuenta mediante las reglas asignadas con el nombre de dominio agregado antes de ella.
permission path sysname Pertenencia al grupo que permite que la cuenta tenga acceso.

Comentarios

Si se especifica @acctname , xp_logininfo notifica el nivel de privilegio más alto del usuario o grupo de Windows especificado. Si un usuario de Windows tiene acceso como administrador del sistema y como usuario de dominio, se notifica como administrador del sistema. Si el usuario es miembro de varios grupos de Windows de igual nivel de privilegio, solo se notifica el grupo al que se concede acceso por primera vez a SQL Server.

Si @acctname es un usuario o grupo de Windows válido que no está asociado a un inicio de sesión de SQL Server, se devuelve un conjunto de resultados vacío. Si @acctname no se puede identificar como un usuario o grupo válidos de Windows, se devuelve un mensaje de error.

Si @acctname y all se especifican, se devuelven todas las rutas de acceso de permisos para el usuario o grupo de Windows. Si @acctname es miembro de varios grupos, todos los cuales tienen acceso a SQL Server, se devuelven varias filas. Las admin filas de privilegios se devuelven antes de las user filas de privilegios y, dentro de un nivel de privilegios, las filas se devuelven en el orden en que se crearon los inicios de sesión de SQL Server correspondientes.

Si se especifican @acctname y members , se devuelve una lista de los miembros de siguiente nivel del grupo. Si @acctname es un grupo local, la lista puede incluir usuarios locales, usuarios de dominio y grupos. Si @acctname es una cuenta de dominio, la lista se compone de usuarios de dominio. SQL Server debe conectarse al controlador de dominio para recuperar la información de pertenencia a grupos. Si el servidor no puede ponerse en contacto con el controlador de dominio, no se devuelve información.

xp_logininfo solo devuelve información de grupos globales de Active Directory, no de grupos universales.

Permisos

Requiere el permiso CONTROL SERVER en el servidor o una cuenta de usuario de master base de datos con EXECUTE permiso concedido en xp_logininfo.

Ejemplos

En el ejemplo siguiente se muestra información sobre el BUILTIN\Administrators grupo de Windows.

EXECUTE xp_logininfo 'BUILTIN\Administrators';