Rollen auf Serverebene

SQL Server stellt Rollen auf Serverebene bereit, um Sie beim Verwalten der Berechtigungen auf einem Server zu unterstützen. Bei diesen Rollen handelt es sich um Sicherheitsprinzipale, in denen andere Prinzipale gruppiert sind. Der Geltungsbereich der Berechtigungen von Rollen auf Serverebene erstreckt sich auf den gesamten Server. (Rollen entsprechen den Gruppen im Betriebssystem Windows.)

Feste Serverrollen werden der Einfachheit halber und zur Gewährung der Abwärtskompatibilität bereitgestellt. Weisen Sie nach Möglichkeit spezifischere Berechtigungen zu.

SQL Server sind neun feste Serverrollen verfügbar. Die den festen Serverrollen erteilten Berechtigungen können nicht geändert werden. Ab SQL Server 2012 können Sie benutzerdefinierte Serverrollen erstellen und den benutzerdefinierten Serverrollen Berechtigungen auf Serverebene hinzufügen.

Sie können Prinzipale auf Serverebene (SQL Server -Anmeldungen, Windows-Konten und Windows-Gruppen) zu Rollen auf Serverebene zusammenfassen. Jedes Mitglied einer festen Serverrolle kann der gleichen Rolle andere Anmeldenamen hinzufügen. Mitglieder benutzerdefinierter Serverrollen können der Rolle keine weiteren Serverprinzipale hinzufügen.

Feste Rollen auf Serverebene

In der folgenden Tabelle werden die festen Rollen auf Serverebene und deren Möglichkeiten angezeigt.

Feste Rolle auf Serverebene BESCHREIBUNG
Serverrollen Mitglieder der festen Serverrolle sysadmin können alle Aktivitäten auf dem Server ausführen.
serveradmin Mitglieder der festen Serverrolle serveradmin können serverweite Konfigurationsoptionen ändern und den Server herunterfahren.
securityadmin Mitglieder der festen Serverrolle securityadmin können Anmeldungen und deren Eigenschaften verwalten. Sie verfügen für Berechtigungen auf Serverebene über die Berechtigungen GRANT, DENY und REVOKE. Sie verfügen auf Datenbankebene auch über die Berechtigungen GRANT, DENY und REVOKE, sofern sie Zugriff eine Datenbank haben. Sie können außerdem Kennwörter für SQL Server -Anmeldungen zurücksetzen.

** Sicherheitshinweis ** Durch die Möglichkeit, Zugriff auf die Datenbank-Engine zu gewähren und Benutzerberechtigungen zu konfigurieren, kann der Sicherheitsadministrator die meisten Serverberechtigungen zuweisen. Die securityadmin Rolle sollte als gleichwertig mit der sysadmin Rolle behandelt werden.
processadmin Mitglieder der festen Serverrolle processadmin können Prozesse beenden, die in einer Instanz von SQL Server ausgeführt werden.
setupadmin Mitglieder der festen Serverrolle setupadmin können Verbindungsserver mithilfe von Transact-SQL-Anweisungen hinzufügen und entfernen. (Die Verwendung von Management Studio erfordert die Mitgliedschaft in sysadmin.)
bulkadmin Mitglieder der festen Serverrolle bulkadmin können die BULK INSERT-Anweisung ausführen.
diskadmin Die feste Serverrolle diskadmin wird zum Verwalten von Datenträgerdateien verwendet.
dbcreator Mitglieder der festen Serverrolle dbcreator können beliebige Datenbanken erstellen, ändern, löschen und wiederherstellen.
öffentlich Jede SQL Server-Anmeldung gehört der Serverrolle „public“ an. Wenn einem Serverprinzipal keine bestimmten Berechtigungen für ein sicherungsfähiges Objekt erteilt oder verweigert werden, erbt der Benutzer die Berechtigungen, die der Rolle public für dieses Objekt erteilt wurden. Weisen Sie einem Objekt nur dann public-Berechtigungen zu, wenn das Objekt für alle Benutzer verfügbar sein soll. Sie können keine Mitgliedschaft in „public“ ändern.

Hinweis: „public“ wird anders implementiert als andere Rollen. Berechtigungen können jedoch von „public“ gewährt, verweigert oder widerrufen werden.

Berechtigungen fester Serverrollen

Jede feste Serverrolle besitzt bestimmte Berechtigungen. Eine Übersicht der Berechtigungen, die Serverrollen zugewiesen sind, finden Sie unter Feste Serverrollen und feste Datenbankrollen der Datenbank-Engine.

Wichtig

Die Berechtigung CONTROL SERVER ist ähnlich, aber nicht identisch mit der festen Serverrolle sysadmin. Berechtigungen umfassen keine Rollenmitgliedschaften, und Rollenmitgliedschaften gewähren keine Berechtigungen. (Z. B. CONTROL SERVER impliziert nicht die Mitgliedschaft in der sysadmin festen Serverrolle.) Es ist jedoch manchmal möglich, die Identität zwischen Rollen und gleichwertigen Berechtigungen zu übernehmen. Die meisten DBCC-Befehle und viele Systemprozeduren erfordern die Mitgliedschaft in der festen Serverrolle sysadmin. Eine Liste der 171 gespeicherten Systemprozeduren, die eine Mitgliedschaft erfordern sysadmin , finden Sie im folgenden Blogbeitrag von Andreas Wolter CONTROL SERVER vs. sysadmin/sa: Berechtigungen, Systemprozeduren, DBCC, automatische Schemaerstellung und Rechteausweitung – Einschränkungen.

Berechtigung auf Serverebene

Benutzerdefinierten Serverrollen können nur Berechtigungen auf Serverebene hinzugefügt werden. Führen Sie zum Auflisten der Berechtigungen auf Serverebene die folgende Anweisung aus. Folgende Berechtigungen gelten auf Serverebene:

SELECT * FROM sys.fn_builtin_permissions('SERVER') ORDER BY permission_name;  

Weitere Informationen zu Berechtigungen finden Sie unter Berechtigungen (Datenbank-Engine) und sys.fn_builtin_permissions (Transact-SQL).

Arbeiten mit Rollen auf Serverebene

In der folgenden Tabelle werden die Befehle, Sichten und Funktionen erklärt, die Sie beim Arbeiten mit Rollen auf Serverebene verwenden können.

Funktion type BESCHREIBUNG
sp_helpsrvrole (Transact-SQL) Metadaten Gibt eine Liste von Rollen auf Serverebene zurück.
sp_helpsrvrolemember (Transact-SQL) Metadaten Gibt Informationen zu Mitgliedern einer Rolle auf Serverebene zurück.
sp_srvrolepermission (Transact-SQL) Metadaten Zeigt die Berechtigungen einer Rolle auf Serverebene an.
IS_SRVROLEMEMBER (Transact-SQL) Metadaten Gibt an, ob eine SQL Server -Anmeldung Mitglied der angegebenen Rolle auf Serverebene ist.
sys.server_role_members (Transact-SQL) Metadaten Gibt eine Zeile für jedes Mitglied jeder Rolle auf Serverebene zurück.
sp_addsrvrolemember (Transact-SQL) Get-Help Fügt einen Benutzernamen als Mitglied einer Rolle auf Serverebene hinzu. Veraltet. Verwenden Sie stattdessen ALTER SERVER ROLE .
sp_dropsrvrolemember (Transact-SQL) Get-Help Entfernt einen SQL Server -Anmeldenamen oder einen Windows-Benutzer bzw. eine -Gruppe aus einer Rolle auf Serverebene. Veraltet. Verwenden Sie stattdessen ALTER SERVER ROLE .
CREATE SERVER ROLE (Transact-SQL) Get-Help Erstellt eine benutzerdefinierte Serverrolle.
ALTER SERVER ROLE (Transact-SQL) Get-Help Ändert die Mitgliedschaft einer Serverrolle oder ändert Namen einer benutzerdefinierten Serverrolle.
DROP SERVER ROLE (Transact-SQL) Get-Help Entfernt eine benutzerdefinierte Serverrolle.
IS_SRVROLEMEMBER (Transact-SQL) Funktion Bestimmt die Mitgliedschaft einer Serverrolle.

Weitere Informationen

Rollen auf Datenbankebene
Sicherheitskatalogsichten (Transact-SQL)
Sicherheitsfunktionen (Transact-SQL)
Sichern von SQL Server
GRANT (Berechtigungen für Serverprinzipal) (Transact-SQL)
REVOKE (Berechtigungen für Serverprinzipal) (Transact-SQL)
DENY (Berechtigungen für Serverprinzipal) (Transact-SQL)
Erstellen einer Serverrolle