xp_logininfo (Transact-SQL)

Gibt Informationen zu Windows-Benutzern und Windows-Gruppen zurück.

Themenlink (Symbol)Transact-SQL-Syntaxkonventionen

Syntax

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

Argumente

  • [ @acctname = ] 'account_name'
    Der Name eines Windows-Benutzers oder einer Windows-Gruppe, dem bzw. der Zugriff auf SQL Server erteilt wurde. account_name ist vom Datentyp sysname, der Standardwert ist NULL. Wird account_name nicht angegeben, werden alle Windows-Gruppen und Windows-Benutzer ausgegeben, denen die Anmeldeberechtigung explizit erteilt wurde. account_name muss vollqualifiziert sein. Beispiel: 'ADVWKS4\macraes' oder 'VORDEFINIERT\Administratoren'.

  • 'all' | 'members'
    Gibt an, ob für das Konto die Informationen zu allen Berechtigungspfaden oder nur die Informationen zu den Mitgliedern der Windows-Gruppe ausgegeben werden sollen. @option ist vom Datentyp varchar(10), der Standardwert ist NULL. Sofern nicht all angegeben wurde, wird nur der erste Berechtigungspfad angezeigt.

  • [ @privilege = ] variable_name
    Ein Ausgabeparameter, der die Privilegstufe des angegebenen Windows-Kontos zurückgibt. variable_name ist vom Datentyp varchar(10), der Standardwert ist 'Not wanted'. Die zurückgegebene Privilegstufe ist user, admin oder null.

  • OUTPUT
    Wenn dieser Parameter angegeben wird, wird variable_name in den Ausgabeparameter platziert.

Rückgabecodewerte

0 (Erfolg) oder 1 (Fehler)

Resultsets

Spaltenname

Datentyp

Beschreibung

account name

sysname

Der vollqualifizierte Windows-Kontoname.

Typ

char(8)

Der Windows-Kontotyp. Gültige Werte sind user oder group.

privilege

char(9)

Das Zugriffsprivileg für SQL Server. Gültige Werte sind admin, user oder null.

mapped login name

sysname

Für Benutzerkonten mit Benutzerprivileg wird mit mapped login name der zugeordnete Anmeldename angezeigt, den SQL Server bei der Anmeldung mit diesem Konto zu verwenden versucht. Dabei werden die Zuordnungsregeln mit Voranstellung des Domänennamens verwendet.

permission path

sysname

Die Gruppenmitgliedschaft, die dem Konto den Zugriff ermöglicht hat.

Hinweise

Wird account_name angegeben, meldet xp_logininfo die höchste Privilegstufe des angegebenen Windows-Benutzers bzw. der angegebenen Windows-Gruppe. Wenn ein Windows-Benutzer Zugriff als Systemadministrator und als Domänenbenutzer hat, wird er nur als Systemadministrator gemeldet. Gehört der Benutzer mehreren Windows-Gruppen derselben Privilegstufe an, wird nur die Gruppe gemeldet, der zuerst Zugriff auf SQL Server erteilt wurde.

Wenn account_name ein gültiger Windows-Benutzer oder eine gültige Windows-Gruppe ist, dem bzw. der kein SQL Server-Anmeldename zugeordnet ist, wird ein leeres Resultset zurückgegeben. Wenn account_name nicht als gültiger Windows-Benutzer oder als gültige Windows-Gruppe identifiziert werden kann, wird ein Fehler gemeldet.

Werden account_name und all angegeben, werden sämtliche Berechtigungspfade für den Windows-Benutzer oder die Windows-Gruppe zurückgegeben. Wenn account_name mehreren Gruppen angehört, denen allen Zugriff auf SQL Server erteilt wurde, werden mehrere Zeilen zurückgegeben. Die Zeilen für das admin-Privileg werden vor den Zeilen für das user-Privileg zurückgegeben. Innerhalb einer Privilegstufe werden die Zeilen in der Reihenfolge zurückgegeben, in der die entsprechenden SQL Server-Anmeldenamen erstellt wurden.

Wenn account_name und members angegeben werden, wird eine Liste der Gruppenmitglieder der nächsten Ebene zurückgegeben. Ist account_name der Name einer lokalen Gruppe, kann die Liste lokale Benutzer, Domänenbenutzer und Gruppen enthalten. Ist account_name ein Domänenkonto, besteht die Liste aus Domänenbenutzern. SQL Server muss eine Verbindung mit dem Domänencontroller herstellen, um Informationen zur Gruppenmitgliedschaft abzurufen. Falls der Server keine Verbindung mit dem Domänencontroller herstellen kann, werden keine Informationen zurückgegeben.

xp_logininfo gibt nur Informationen aus globalen Active Directory-Gruppen, nicht aber aus Universalgruppen zurück.

Berechtigungen

Erfordert in der master-Datenbank mit erteilter EXECUTE-Berechtigung die Mitgliedschaft in der festen Serverrolle sysadmin bzw. die Mitgliedschaft in der festen Datenbankrolle public.

Beispiele

Im folgenden Beispiel werden Informationen zur Windows-Gruppe BUILTIN\Administrators angezeigt.

EXEC xp_logininfo 'BUILTIN\Administrators'