Sdílet prostřednictvím


xp_logininfo (Transact-SQL)

platí pro:SQL Server

Vrátí informace o uživatelích Windows a skupinách Windows.

Transact-SQL konvence syntaxe

Syntax

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

Argumenty

[ @acctname = ] '@acctname'

Název uživatele nebo skupiny Systému Windows udělil přístup k SQL Serveru. @acctname je sysname , s výchozím NULL. Pokud není zadaný @acctname, nahlásí se všechny skupiny Windows a uživatelé Windows, kteří mají explicitně udělená oprávnění k přihlášení. @acctname musí být plně kvalifikovaný. Například CONTOSO\macraesnebo BUILTIN\Administrators.

[ @option = ] 'all' |členové'

Určuje, zda se mají hlásit informace o všech cestách oprávnění pro účet, nebo sestavovat informace o členech skupiny Systému Windows. @option je varchar(10), s výchozím NULL. Pokud není zadán all, zobrazí se pouze první cesta oprávnění.

[ @privilege = ] 'variable_name' OUTPUT

Výstupní parametr, který vrací úroveň oprávnění zadaného účtu Systému Windows. @privilege je varchar(10), s výchozím Not wanted. Vrácená úroveň oprávnění je user, adminnebo null.

Pokud je zadán OUTPUT, tato možnost umístí @privilege do výstupního parametru.

Návratové hodnoty kódu

0 (úspěch) nebo 1 (selhání).

Sada výsledků

Název sloupce Datový typ Popis
account name sysname Plně kvalifikovaný název účtu Systému Windows.
type znak (8) Typ účtu Systému Windows. Platné hodnoty jsou user nebo group.
privilege znak (9) Oprávnění k přístupu pro SQL Server Platné hodnoty jsou admin, usernebo NULL.
mapped login name sysname U uživatelských účtů s oprávněním uživatele mapped login name zobrazí mapované přihlašovací jméno, které se SQL Server pokusí použít při přihlašování pomocí tohoto účtu pomocí namapovaných pravidel s přidaným názvem domény.
permission path sysname Členství ve skupinách, které povolilo přístup k účtu

Poznámky

Pokud @acctname zadáte, xp_logininfo hlásí nejvyšší úroveň oprávnění zadaného uživatele nebo skupiny Systému Windows. Pokud má uživatel Systému Windows přístup jako správce systému i jako uživatel domény, zobrazí se jako správce systému. Pokud je uživatel členem více skupin Windows se stejnou úrovní oprávnění, je hlášena pouze skupina, která má přístup k SQL Serveru.

Pokud @acctname je platným uživatelem nebo skupinou Windows, která není přidružená k přihlášení k SQL Serveru, vrátí se prázdná sada výsledků. Pokud @acctname nelze identifikovat jako platný uživatel nebo skupinu Systému Windows, vrátí se chybová zpráva.

Pokud jsou zadány @acctname a all, vrátí se všechny cesty oprávnění pro uživatele nebo skupinu Systému Windows. Pokud je @acctname členem více skupin, vrátí se všech z nich přístup k SQL Serveru. Řádky admin oprávnění se vrátí před řádky oprávnění user a v rámci úrovně oprávnění se vrátí řádky v pořadí, v jakém byly vytvořeny odpovídající přihlášení k SQL Serveru.

Pokud jsou zadány @acctname a members, vrátí se seznam členů další úrovně skupiny. Pokud @acctname je místní skupina, může výpis obsahovat místní uživatele, uživatele domény a skupiny. Pokud @acctname je účet domény, seznam se skládá z uživatelů domény. SQL Server se musí připojit k řadiči domény, aby načetl informace o členství ve skupinách. Pokud server nemůže kontaktovat řadič domény, nevrátí se žádné informace.

xp_logininfo vrací pouze informace z globálních skupin služby Active Directory, nikoli univerzálních skupin.

Dovolení

Vyžaduje oprávnění CONTROL SERVER na serveru nebo uživatelský účet v databázi master s oprávněním EXECUTE uděleným pro xp_logininfo.

Příklady

Následující příklad zobrazí informace o skupině BUILTIN\Administrators Windows.

EXECUTE xp_logininfo 'BUILTIN\Administrators';