sp_helpuser (Transact-SQL)
Gilt für:SQL Server
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 (9.x) eingeführt wurden. Verwenden Sie stattdessen sys.database_principals .
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 sysname mit dem Standardwert NULL. Wenn security_account nicht angegeben ist, gibt sp_helpuser Informationen zu allen Datenbankprinzipalen zurück.
Rückgabecodewerte
„0“ (erfolgreich) oder „1“ (fehlerhaft)
Resultsets
Die folgende Tabelle zeigt das Resultset, wenn weder ein Benutzerkonto noch ein SQL Server- 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 | Anmeldung von UserName. |
DefDBName | sysname | Standarddatenbank 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 das Resultset, wenn eine Rolle für security_account angegeben wird.
Spaltenname | Datentyp | BESCHREIBUNG |
---|---|---|
Rolle | 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. |
Bemerkungen
Verwenden Sie sys.database_role_members, um Informationen zur Mitgliedschaft in Datenbankrollen anzuzeigen. Um Informationen zu Serverrollenmitgliedern anzuzeigen, verwenden Sie sys.server_role_members, und um Informationen zu Prinzipalen auf Serverebene anzuzeigen, verwenden Sie sys.server_principals.
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 Metadata Visibility Configuration.
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';
Weitere Informationen
Gespeicherte Sicherheitsprozeduren (Transact-SQL)
Gespeicherte Systemprozeduren (Transact-SQL)
Prinzipale (Datenbank-Engine)
sys.database_principals (Transact-SQL)
sys.database_role_members (Transact-SQL)
sys.server_principals (Transact-SQL)
sys.server_role_members (Transact-SQL)
Feedback
https://aka.ms/ContentUserFeedback.
Bald verfügbar: Im Laufe des Jahres 2024 werden wir GitHub-Issues stufenweise als Feedbackmechanismus für Inhalte abbauen und durch ein neues Feedbacksystem ersetzen. Weitere Informationen finden Sie unterFeedback senden und anzeigen für