Partager via


xp_logininfo (Transact-SQL)

S'applique à :SQL Server

Retourne des informations sur les utilisateurs Windows et les groupes Windows.

Conventions de la syntaxe Transact-SQL

Syntaxe

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

Arguments

[ @acctname = ] '@acctname'

Nom d’un utilisateur ou d’un groupe Windows autorisé à accéder à SQL Server. @acctname est sysname, avec la valeur par défaut NULL. Si @acctname n’est pas spécifié, tous les groupes Windows et les utilisateurs Windows auxquels l’autorisation de connexion est explicitement accordée sont signalés. @acctname doit être qualifié complet. Par exemple, CONTOSO\macraes ou BUILTIN\Administrators.

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

Spécifie s'il faut rapporter les informations sur tous les chemins d'autorisation du compte ou sur les membres du groupe Windows. @option est varchar(10), avec la valeur par défaut NULL. Sauf indication all contraire, seul le premier chemin d’accès d’autorisation s’affiche.

[ @privilege = ] 'variable_name' OUTPUT

Paramètre de sortie qui retourne le niveau de privilège du compte Windows spécifié. @privilege est varchar(10), avec la valeur par défaut Not wanted. Le niveau de privilège retourné est user, adminou null.

Quand OUTPUT elle est spécifiée, cette option place @privilege dans le paramètre de sortie.

Valeurs des codes de retour

0 (réussite) or 1 (échec).

Jeu de résultats

Nom de la colonne Type de données Description
account name sysname Nom de compte Windows complet.
type char(8) Type de compte Windows. Les valeurs valides sont user ou group.
privilege char(9) Privilèges d’accès pour SQL Server. Les valeurs valides sont admin, user ou NULL.
mapped login name sysname Pour les comptes d’utilisateur disposant de privilèges utilisateur, mapped login name affiche le nom de connexion mappé que SQL Server tente d’utiliser lors de la connexion avec ce compte à l’aide des règles mappées avec le nom de domaine ajouté avant celui-ci.
permission path sysname Membre du groupe qui autorise l'accès au compte

Notes

Si @acctname est spécifié, xp_logininfo signale le niveau de privilège le plus élevé de l’utilisateur ou du groupe Windows spécifié. Si un utilisateur Windows a accès à la fois en tant qu’administrateur système et en tant qu’utilisateur de domaine, il est signalé en tant qu’administrateur système. Si l’utilisateur est membre de plusieurs groupes Windows de niveau de privilège égal, seul le groupe qui a d’abord accordé l’accès à SQL Server est signalé.

Si @acctname est un utilisateur ou un groupe Windows valide qui n’est pas associé à une connexion SQL Server, un jeu de résultats vide est retourné. Si @acctname ne peut pas être identifié comme un utilisateur ou un groupe Windows valide, un message d’erreur est retourné.

Si @acctname et all sont spécifiés, tous les chemins d’accès d’autorisation pour l’utilisateur ou le groupe Windows sont retournés. Si @acctname est membre de plusieurs groupes, qui sont tous autorisés à accéder à SQL Server, plusieurs lignes sont retournées. Les admin lignes de privilège sont retournées avant les user lignes de privilège et, dans un niveau de privilège, les lignes sont retournées dans l’ordre dans lequel les connexions SQL Server correspondantes ont été créées.

Si @acctname et members sont spécifiés, une liste des membres de niveau suivant du groupe est retournée. Si @acctname est un groupe local, la liste peut inclure des utilisateurs locaux, des utilisateurs de domaine et des groupes. Si @acctname est un compte de domaine, la liste est composée d’utilisateurs de domaine. SQL Server doit se connecter au contrôleur de domaine pour récupérer les informations d’appartenance au groupe. Si le serveur ne peut pas contacter le contrôleur de domaine, aucune information n’est retournée.

xp_logininfo retourne uniquement les informations des groupes globaux Active Directory, et non des groupes universels.

autorisations

Nécessite l’autorisation CONTROL SERVER sur le serveur ou un compte d’utilisateur dans master base de données avec l’autorisation EXECUTE accordée sur xp_logininfo.

Exemples

L’exemple suivant affiche des informations sur le BUILTIN\Administrators groupe Windows.

EXECUTE xp_logininfo 'BUILTIN\Administrators';