Freigeben über


sp_helpuser (Transact-SQL)

Stellt Informationen zu Prinzipalen auf Datenbankebene in der aktuellen Datenbank bereit.

Wichtig

sp_helpuser gibt keine Informationen zu sicherungsfähigen Elementen zurück, die in SQL Server 2005 eingeführt wurden.Verwenden Sie stattdessen sys.database_principals.

Gilt für: SQL Server (SQL Server 2008 bis aktuelle Version).

Themenlink (Symbol) Transact-SQL-Syntaxkonventionen

Syntax

sp_helpuser [ [ @name_in_db = ] 'security_account' ]

Argumente

  • [ @name_in_db = ] 'security_account'
    Der Name des Datenbankbenutzers oder der Datenbankrolle in der aktuellen Datenbank. security_account muss in der aktuellen Datenbank vorhanden sein. security_account ist vom Datentyp sysname. Der Standardwert ist NULL. Falls security_account nicht angegeben ist, gibt sp_helpuser Informationen zu allen Datenbankprinzipalen zurück.

Rückgabecodewerte

0 (Erfolg) oder 1 (Fehler)

Resultsets

Die folgende Tabelle zeigt, wie das Resultset aussieht, wenn weder ein Benutzerkonto noch ein SQL Server-Benutzer oder Windows-Benutzer für security_account angegeben ist.

Spaltenname

Datentyp

Beschreibung

UserName

sysname

Benutzer in der aktuellen Datenbank.

RoleName

sysname

Rollen, zu denen UserName gehört.

LoginName

sysname

Anmeldename von UserName.

DefDBName

sysname

Standarddatenbank von UserName.

DefSchemaName

sysname

Standardschema des Datenbankbenutzers.

UserID

smallint

ID von UserName in der aktuellen Datenbank.

SID

smallint

Sicherheits-ID (SID) des Benutzers.

Die folgende Tabelle zeigt, wie das Resultset aussieht, wenn kein Benutzerkonto angegeben ist und Aliase in der aktuellen Datenbank vorhanden sind.

Spaltenname

Datentyp

Beschreibung

LoginName

sysname

Anmeldenamen, die mithilfe eines Alias mit Benutzern in der aktuellen Datenbank verknüpft sind.

UserNameAliasedTo

sysname

Benutzername in der aktuellen Datenbank, mit dem der Anmeldename mithilfe eines Alias verknüpft ist.

Die folgende Tabelle zeigt, wie das Resultset aussieht, wenn eine Rolle für security_account angegeben ist.

Spaltenname

Datentyp

Beschreibung

Role_name

sysname

Name der Rolle in der aktuellen Datenbank.

Role_id

smallint

Rollen-ID für die Rolle in der aktuellen Datenbank.

Users_in_role

sysname

Mitglied der Rolle in der aktuellen Datenbank.

Userid

smallint

Benutzer-ID für das Rollenmitglied.

Hinweise

Verwenden Sie sys.database_role_members, um Informationen zur Mitgliedschaft in Datenbankrollen anzuzeigen. Verwenden Sie sys.server_role_members, um Informationen zur Mitgliedschaft in Serverrollen anzuzeigen, und verwenden Sie sys.server_principals, um Informationen zu Prinzipalen auf Serverebene anzuzeigen.

Berechtigungen

Erfordert die Mitgliedschaft in der public-Rolle.

Die zurückgegebenen Informationen unterliegen den Einschränkungen, die für den Zugriff auf Metadaten gelten. Entitäten, für die der Prinzipal keine Berechtigungen besitzt, werden nicht angezeigt. Weitere Informationen finden Sie unter Konfigurieren der Sichtbarkeit von Metadaten.

Beispiele

A.Auflisten aller Benutzer

Im folgenden Beispiel werden alle Benutzer in der aktuellen Datenbank aufgelistet.

EXEC sp_helpuser;

B.Auflisten von Informationen für einen einzelnen Benutzer

Im folgenden Beispiel werden Informationen zum Datenbankbesitzer (dbo) aufgelistet.

EXEC sp_helpuser 'dbo';

C.Auflisten von Informationen für eine Datenbankrolle

Im folgenden Beispiel werden Informationen zur festen Datenbankrolle db_securityadmin aufgelistet.

EXEC sp_helpuser 'db_securityadmin';

Siehe auch

Verweis

Gespeicherte Sicherheitsprozeduren (Transact-SQL)

Gespeicherte Systemprozeduren (Transact-SQL)

sys.database_principals (Transact-SQL)

sys.database_role_members (Transact-SQL)

sys.server_principals (Transact-SQL)

sys.server_role_members (Transact-SQL)

Konzepte

Prinzipale (Datenbankmodul)