Freigeben über


Berechtigungen (Datenbank-Engine)

Gilt für:SQL ServerAzure SQL-DatenbankVerwaltete Azure SQL-InstanzAzure Synapse AnalyticsAnalytics Platform System (PDW)SQL-Analyseendpunkt in Microsoft FabricLagerhaus in Microsoft FabricSQL-Datenbank in Microsoft Fabric

Jedem sicherungsfähigen SQL Server-Element werden Berechtigungen zugeordnet, die einem Prinzipal erteilt werden können. Datenbank-Engine-Berechtigungen im Datenbankmodul werden sowohl auf dem Serverlevel, das den Anmeldeinformationen und Serverrollen zugewiesen ist, als auch auf dem Datenbanklevel verwaltet, das den Datenbankbenutzer und Datenbankrollen zugewiesen ist. Das Model für Azure SQL-Datenbank wendet dieses System auch auf die Datenbankberechtigungen an. Die Berechtigungen auf Serverebene sind jedoch nicht verfügbar. Dieser Artikel bietet eine vollständige Liste der Berechtigungen. Eine typische Implementierung der Berechtigungen finden Sie unter "Erste Schritte mit Datenbankmodulberechtigungen".

Die Gesamtzahl der Berechtigungen für SQL Server 2022 (16.x) beträgt 292. Azure SQL-Datenbank macht 292 Berechtigungen verfügbar. Die meisten Berechtigungen – jedoch nicht alle – gelten für alle Plattformen. Zum Beispiel können in Azure SQL-Datenbank die meisten Berechtigungen auf Serverebene nicht erteilt werden, und einige Berechtigungen sind nur für Azure SQL-Datenbank sinnvoll. Neue Berechtigungen werden nach und nach in neuen Releases eingeführt. SQL Server 2019 (15.x) macht 248 Berechtigungen verfügbar. SQL Server 2017 (14.x) hat 238 Berechtigungen verfügbar gemacht. SQL Server 2016 (13.x) hat 230 Berechtigungen verfügbar gemacht. SQL Server 2014 (12.x) hat 219 Berechtigungen verfügbar gemacht. SQL Server 2012 (11.x) hat 214 Berechtigungen verfügbar gemacht. SQL Server 2008 R2 (10.50.x) hat 195 Berechtigungen verfügbar gemacht. In dem Artikel sys.fn_builtin_permissions wird erläutert, welche Berechtigungen in aktuellen Versionen jeweils neu sind.

In der SQL-Datenbank in Microsoft Fabric werden nur Benutzer und Rollen auf Datenbankebene unterstützt. Anmeldeinformationen, Rollen und das sa Konto auf Serverebene sind nicht verfügbar. In der SQL-Datenbank in Microsoft Fabric ist die Microsoft Entra-ID für Datenbankbenutzer die einzige unterstützte Authentifizierungsmethode. Weitere Informationen finden Sie unter Autorisierung in der SQL-Datenbank in Microsoft Fabric.

Sobald Sie sich mit den erforderlichen Berechtigungen vertraut gemacht haben, können Sie die Anweisungen GRANT, REVOKE und DENY verwenden, um Berechtigungen auf Serverebene auf Anmeldungen oder Serverrollen und Berechtigungen auf Datenbankebene auf Benutzer oder Datenbankrollen anzuwenden. Beispiel:

GRANT SELECT ON SCHEMA::HumanResources TO role_HumanResourcesDept;
REVOKE SELECT ON SCHEMA::HumanResources TO role_HumanResourcesDept;

Tipps zum Planen eines Berechtigungssystems finden Sie unter "Erste Schritte mit Datenbankmodulberechtigungen".

Benennungskonventionen für Berechtigungen

Im Folgenden werden die allgemeinen Konventionen beschrieben, die beim Benennen von Berechtigungen befolgt werden:

  • CONTROL

    Überträgt besitzähnliche Funktionen an den Empfänger. Der Empfänger verfügt über alle definierten Berechtigungen für das sicherungsfähige Element. Ein Prinzipal, dem die Berechtigung CONTROL erteilt wurde, kann auch Berechtigungen für das sicherungsfähige Element erteilen. Da es sich bei dem SQL Server-Sicherheitsmodell um ein hierarchisches Modell handelt, beinhaltet CONTROL für einen bestimmten Gültigkeitsbereich implizit auch CONTROL für alle sicherungsfähigen Elemente in diesem Gültigkeitsbereich. CONTROL für eine Datenbank impliziert alle Berechtigungen für die Datenbank, alle Berechtigungen für alle Assemblys in der Datenbank, alle Berechtigungen für alle Schemas in der Datenbank sowie alle Berechtigungen für Objekte innerhalb aller Schemas in der Datenbank.

  • ALTER

    Überträgt die Berechtigung, die Eigenschaften, mit Ausnahme des Besitzes, eines bestimmten sicherungsfähigen Elements zu ändern. Wenn ALTER für einen Gültigkeitsbereich erteilt wird, wird damit auch die Berechtigung zum Ändern, Erstellen oder Löschen eines sicherungsfähigen Elements erteilt, das in diesen Bereich fällt. So beinhaltet die Berechtigung ALTER für ein Schema auch die Berechtigung zum Erstellen, Ändern und Löschen von Objekten aus dem Schema.

  • ALTER ANY <Server Securable>, wobei Server Securable ein beliebiges Server Securable sein kann.

    Überträgt die Berechtigung zum Erstellen, Ändern oder Löschen einzelner Instanzen des Server Securable. So überträgt z. B. ALTER ANY LOGIN die Berechtigung zum Erstellen, Ändern oder Löschen einer beliebigen Anmeldung in der Instanz.

  • ALTER ANY <Database Securable>, wobei es sich bei Database Securable um jedes beliebige sicherungsfähige Element auf Datenbankebene handeln kann.

    Überträgt die Berechtigung zum Erstellen, Ändern oder Löschen (CREATE, ALTER oder DROP) einzelner Instanzen des Database Securable. So überträgt z. B. ALTER ANY SCHEMA die Berechtigung zum Erstellen, Ändern oder Löschen eines beliebigen Schemas in der Datenbank.

  • ÜBERNEHMEN EIGENTUM

    Ermöglicht es dem Berechtigten, das Eigentum an dem verbrieften Gerät zu übernehmen, für das die Berechtigung erteilt wurde.

  • < Nachahmen>

    Ermöglicht dem Empfänger, die Identität des Anmeldenamens anzunehmen.

  • Benutzer imitieren <>

    Ermöglicht dem Empfänger, die Identität des Benutzers anzunehmen.

  • CREATE <Server Absicherbar>

    Überträgt dem Empfänger die Berechtigung zum Erstellen des Server Securable.

  • CREATE <Sicherbare Datenbank>

    Überträgt dem Berechtigten die Berechtigung zum Erstellen des Database Securable.

  • CREATE <Schema-enthaltene sichere Elemente>

    Überträgt die Berechtigung zum Erstellen des im Schema enthaltenen sicherungsfähigen Elements. Es wird jedoch die Berechtigung ALTER für das Schema benötigt, um das sicherungsfähige Element in einem bestimmten Schema zu erstellen.

  • Darstellungsdefinition

    Gewährt dem Empfänger Zugriff auf Metadaten.

  • REFERENCES

    Die REFERENCES-Berechtigung für eine Tabelle ist erforderlich, um eine FOREIGN KEY-Einschränkung zu erstellen, die auf die betreffende Tabelle verweist.

    Die REFERENCES-Berechtigung ist für ein Objekt erforderlich, um eine FUNCTION oder VIEW mit der WITH SCHEMABINDING -Klausel zu erstellen, die auf das betreffende Objekt verweist.

Diagramm der SQL Server-Berechtigungen

Das folgende Bild zeigt die Berechtigungen und ihre Beziehungen zueinander. Einige der Berechtigungen auf höherer Ebene (z.B. CONTROL SERVER) sind mehrmals aufgeführt. In diesem Artikel ist nicht ausreichend Platz, um das Poster entsprechend darzustellen. Sie können das Poster zu den Datenbank-Engine-Berechtigungen im PDF-Format in voller Größe herunterladen.

Screenshot aus der PDF-Datei

Berechtigungen für bestimmte sicherungsfähige Elemente

Die folgende Tabelle enthält eine Liste der wichtigsten Berechtigungsklassen und der sicherungsfähigen Elemente, für die sie erteilt werden können.

Permission Gilt für:
ALTER Alle Objektklassen außer TYPE.
CONTROL Alle Objektklassen:

AGGREGATE,
ANWENDUNGSROLLE,
ASSEMBLY,
ASYMMETRISCHER SCHLÜSSEL,
VERFÜGBARKEITSGRUPPE,
CERTIFICATE,
CONTRACT,
CREDENTIALS,
DATABASE,
DATENBANKBEREICHSBEZOGENE ANMELDEBERECHTIGUNG
DEFAULT,
ENDPOINT,
FULLTEXT-KATALOG,
FULLTEXT Stopp-Liste
FUNCTION,
LOGIN,
NACHRICHTENTYP,
PROCEDURE,
QUEUE,
Remote-Dienstbindung
ROLE,
ROUTE,
RULE,
SCHEMA,
SUCHEIGENSCHAFTSLISTE,
SERVER,
SERVERROLLE,
SERVICE,
symmetrischer Schlüssel
SYNONYM,
TABLE,
TYPE,
USER,
ANZEIGEN und
XML-SCHEMA-SAMMLUNG
DELETE Alle Objektklassen außer DATABASE SCOPED CONFIGURATION, SERVER und TYPE.
EXECUTE CLR-Typen, externe Skripts, Prozeduren (Transact-SQL und CLR), Skalar- und Aggregatfunktionen (Transact-SQL und CLR) und Synonyme
IMPERSONATE Zugangsdaten und Benutzer*innen
INSERT Synonyme, Tabellen und Spalten, Ansichten und Spalten. Eine Berechtigung kann auf Datenbank-, Schema- oder Objektebene erteilt werden.
RECEIVE Service Broker-Warteschlange
REFERENCES AGGREGATE,
ASSEMBLY,
ASYMMETRISCHER SCHLÜSSEL,
CERTIFICATE,
CONTRACT,
ANMELDEDATEN (Gilt für SQL Server 2022 (16.x) und höher).
DATABASE,
DATENBANKBEREICHSBEZOGENE ANMELDEBERECHTIGUNG
FULLTEXT-KATALOG,
Volltext-Stopp-Liste
FUNCTION,
NACHRICHTENTYP,
PROCEDURE,
QUEUE,
RULE,
SCHEMA,
SUCHEIGENSCHAFTSLISTE,
SEQUENCE-OBJEKT,
Symmetrischer Schlüssel
TABLE,
TYPE,
ANZEIGEN und
XML-SCHEMA-SAMMLUNG
SELECT Synonyme, Tabellen und Spalten, Ansichten und Spalten. Eine Berechtigung kann auf Datenbank-, Schema- oder Objektebene erteilt werden.
ÜBERNEHMEN EIGENTUM Alle Objektklassen außer DATABASE SCOPED CONFIGURATION, LOGIN, SERVER und USER.
UPDATE Synonyme, Tabellen und Spalten, Ansichten und Spalten. Eine Berechtigung kann auf Datenbank-, Schema- oder Objektebene erteilt werden.
ÄNDERUNGSNACHVERFOLGUNG ANZEIGEN Schemata und Tabellen
Darstellungsdefinition Alle Objektklassen außer DATABASE SCOPED CONFIGURATION und SERVER.

Caution

Die Standardberechtigungen, die Systemobjekten zum Zeitpunkt der Installation erteilt wurden, werden sorgfältig bezüglich möglicher Bedrohungen ausgewertet und müssen nicht im Rahmen der Härtung der SQL Server-Installation geändert werden. Alle Änderungen an den Berechtigungen für Systemobjekte können die Funktionalität einschränken oder unterbrechen und potenziell dazu führen, dass Ihre SQL Server-Installation einen nicht unterstützten Zustand aufweist.

SQL Server-Berechtigungen

Die folgende Tabelle enthält eine vollständige Liste der SQL Server-Berechtigungen. Azure SQL-Datenbank-Berechtigungen sind nur für unterstützte sicherungsfähige Basiselemente verfügbar. Berechtigungen auf Serverebene können in Azure SQL-Datenbank nicht gewährt werden, in einigen Fällen sind jedoch stattdessen Datenbankberechtigungen verfügbar.

Basis sicherbar Spezifische Berechtigungen für sicherungsfähiges Basiselement Berechtigungstypcode Sicherungsfähiges Element, das sicherungsfähiges Basiselement enthält Berechtigung für sicherungsfähiges Containerelement mit spezifischer Berechtigung für sicherungsfähiges Basiselement
ANWENDUNGSROLLE ALTER AL DATABASE ÄNDERN EINER BELIEBIGEN ANWENDUNGSROLLE
ANWENDUNGSROLLE CONTROL CL DATABASE CONTROL
ANWENDUNGSROLLE Darstellungsdefinition VW DATABASE Darstellungsdefinition
ASSEMBLY ALTER AL DATABASE BELIEBIGE ASSEMBLY ÄNDERN
ASSEMBLY CONTROL CL DATABASE CONTROL
ASSEMBLY REFERENCES RF DATABASE REFERENCES
ASSEMBLY ÜBERNEHMEN EIGENTUM TO DATABASE CONTROL
ASSEMBLY Darstellungsdefinition VW DATABASE Darstellungsdefinition
asymmetrischer Schlüssel ALTER AL DATABASE ÄNDERN EINES ASYMMETRISCHEN SCHLÜSSELS
asymmetrischer Schlüssel CONTROL CL DATABASE CONTROL
asymmetrischer Schlüssel REFERENCES RF DATABASE REFERENCES
asymmetrischer Schlüssel ÜBERNEHMEN EIGENTUM TO DATABASE CONTROL
asymmetrischer Schlüssel Darstellungsdefinition VW DATABASE Darstellungsdefinition
VERFÜGBARKEITSGRUPPE ALTER AL SERVER ÄNDERUNG JEDER VERFÜGBARKEITSGRUPPE
VERFÜGBARKEITSGRUPPE CONTROL CL SERVER Steuerungsserver
VERFÜGBARKEITSGRUPPE ÜBERNEHMEN EIGENTUM TO SERVER Kontrollserver
VERFÜGBARKEITSGRUPPE Darstellungsdefinition VW SERVER Jede Definition ansehen
CERTIFICATE ALTER AL DATABASE ÄNDERN EINES BELIEBIGEN ZERTIFIKATS
CERTIFICATE CONTROL CL DATABASE CONTROL
CERTIFICATE REFERENCES RF DATABASE REFERENCES
CERTIFICATE ÜBERNEHMEN EIGENTUM TO DATABASE CONTROL
CERTIFICATE Darstellungsdefinition VW DATABASE Darstellungsdefinition
CONTRACT ALTER AL DATABASE ÄNDERN EINES VERTRAGS
CONTRACT CONTROL CL DATABASE CONTROL
CONTRACT REFERENCES RF DATABASE REFERENCES
CONTRACT ÜBERNEHMEN EIGENTUM TO DATABASE CONTROL
CONTRACT Darstellungsdefinition VW DATABASE Darstellungsdefinition
CREDENTIAL CONTROL CL SERVER Kontrollserver
CREDENTIAL REFERENCES RF SERVER ÄNDERN EINER BELIEBIGEN ANMELDEINFORMATION
DATABASE VERWALTEN VON BULK-OPERATIONEN IN DER DATENBANK DABO SERVER Steuerungsserver
DATABASE ALTER AL SERVER ÄNDERN EINER BELIEBIGEN DATENBANK
DATABASE ÄNDERN EINER BELIEBIGEN ANWENDUNGSROLLE ALAR SERVER Steuerungsserver
DATABASE BELIEBIGE ASSEMBLY ÄNDERN ALAS SERVER Steuerungsserver
DATABASE ÄNDERN EINES ASYMMETRISCHEN SCHLÜSSELS ALAK SERVER Kontrollserver
DATABASE ÄNDERN EINES BELIEBIGEN ZERTIFIKATS ALCF SERVER Steuerserver
DATABASE ÄNDERN EINES BELIEBIGEN SPALTENVERSCHLÜSSELUNGSSCHLÜSSELS ALCK

Gilt für SQL Server (SQL Server 2016 (13.x) bis zur aktuellen Version), Azure SQL-Datenbank.
SERVER Kontrollserver
DATABASE ÄNDERN EINES BELIEBIGEN SPALTENMASTERSCHLÜSSELS ALCM

Gilt für SQL Server (SQL Server 2016 (13.x) bis zur aktuellen Version), Azure SQL-Datenbank.
SERVER Kontrollserver
DATABASE ÄNDERN EINES VERTRAGS ALSC SERVER Steuerungsserver
DATABASE ÄNDERN EINER DATENBANKÜBERWACHUNG ALDA SERVER ÄNDERN EINER SERVERÜBERWACHUNG
DATABASE ÄNDERN EINES DATENBANK-DDL-TRIGGERS ALTG SERVER Steuerungsserver
DATABASE Benachrichtigungen zu Datenbankereignissen ändern ALED SERVER JEDES EREIGNISBENACHRICHTIGUNG ÄNDERN
DATABASE ÄNDERN EINER DATENBANK-EREIGNISSESSION AADS SERVER ÄNDERN EINER EREIGNISSITZUNG
DATABASE ÄNDERN EINER DATENBANKEREIGNIS SITZUNG NEUES EREIGNIS HINZUFÜGEN LDAE SERVER ÄNDERE JEDES EREIGNISSITZUNG HINZUFÜGEN EREIGNIS
DATABASE ALTER ANY DATABASE EVENT SESSION ADD TARGET LDAT SERVER ANY EVENT SESSION ÄNDERN ZIEL HINZUFÜGEN
DATABASE ÄNDERN EINER DATENBANKEREIGNISSITZUNG DEAKTIVIEREN DDES SERVER ÄNDERN EINER EREIGNISSITZUNG DEAKTIVIEREN
DATABASE ALTER ANY DATABASE-EVENTSITZUNG EREIGNIS LÖSCHEN LDDE SERVER ÄNDERN SIE JEDES EREIGNISSESSION LÖSCHEN EREIGNIS
DATABASE ÄNDERN EINES DROPZIELS FÜR DATENBANKEREIGNISSITZUNGEN LDDT SERVER ÄNDERN EINES EREIGNISSITZUNGSABLAGEZIELS
DATABASE ALTERIERE JEGLICHE DATENBANKEREIGNISSITZUNG AKTIVIEREN EDES SERVER ALTER ANY EVENT SESSION AKTIVIEREN
DATABASE ÄNDERN EINER DATENBANKEREIGNISSITZUNGSOPTION LDSO SERVER ÄNDERE ALLE EREIGNISSESSION-OPTIONEN
DATABASE ÄNDERN EINER DATENBANKBEREICHSKONFIGURATION ALDC

Gilt für SQL Server (SQL Server 2016 (13.x) bis zur aktuellen Version), Azure SQL-Datenbank.
SERVER Steuerserver
DATABASE ÄNDERN EINES BELIEBIGEN DATENBEREICHS ALDS SERVER Kontrollserver
DATABASE ÄNDERE JEDE EXTERNE DATENQUELLE AEDS SERVER Kontrollserver
DATABASE ÄNDERN EINES BELIEBIGEN EXTERNEN DATEIFORMATS AEFF SERVER Überwachungsserver
DATABASE ÄNDERN EINES EXTERNEN AUFTRAGS AESJ SERVER Steuerungsserver
DATABASE ÄNDERN EINER BELIEBIGEN EXTERNEN SPRACHE ALLA SERVER Steuerserver
DATABASE ÄNDERN EINER BELIEBIGEN EXTERNEN BIBLIOTHEK ALEL SERVER Kontrollserver
DATABASE ÄNDERN EINES EXTERNEN DATENSTROMS AEST SERVER Steuerungsserver
DATABASE ÄNDERN EINES VOLLSTÄNDIGEN TEXTKATALOGS ALFT SERVER Kontrollserver
DATABASE BELIEBIGE MASKE ÄNDERN AAMK

Gilt für SQL Server (SQL Server 2016 (13.x) bis zur aktuellen Version), Azure SQL-Datenbank.
SERVER Steuerungsserver
DATABASE ÄNDERN EINES BELIEBIGEN NACHRICHTENTYPS ALMT SERVER Steuerungsserver
DATABASE ÄNDERN JEDER REMOTE-DIENST-BINDUNG ALSB SERVER Steuerserver
DATABASE ÄNDERN EINER BELIEBIGEN ROLLE ALRL SERVER Steuerungsserver
DATABASE ÄNDERN EINER BELIEBIGEN ROUTE ALRT SERVER Steuerungsserver
DATABASE ÄNDERN EINES BELIEBIGEN SCHEMAS ALSM SERVER Kontrollserver
DATABASE ÄNDERN EINER SICHERHEITSRICHTLINIE ALSP

Gilt für SQL Server (SQL Server 2016 (13.x) bis zur aktuellen Version), Azure SQL-Datenbank.
SERVER Kontrollserver
DATABASE ÄNDERN EINER VERTRAULICHKEITSKLASSIFIZIERUNG AASC
Gilt für SQL Server (SQL Server 2019 (15.x) bis zur aktuellen Version), Azure SQL-Datenbank.
SERVER Kontrollserver
DATABASE ÄNDERE JEDEN DIENST ALSV SERVER Steuerungsserver
DATABASE ÄNDERN EINES SYMMETRISCHEN SCHLÜSSELS ALSK SERVER Steuerungsserver
DATABASE ÄNDERN EINES BELIEBIGEN BENUTZERS ALUS SERVER Steuerserver
DATABASE ALTER LEDGER ALR SERVER CONTROL
DATABASE ALTER LEDGER-KONFIGURATION ALC SERVER Steuerserver
DATABASE AUTHENTICATE AUTH SERVER AUTHENTIFIZIEREN DES SERVERS
DATABASE SICHERUNGSDATENBANK BADB SERVER Steuerserver
DATABASE SICHERUNGSPROTOKOLL BALO SERVER Steuerserver
DATABASE CHECKPOINT CP SERVER Steuerserver
DATABASE CONNECT CO SERVER Steuerserver
DATABASE VERBINDUNGSREPLIKATION CORP SERVER Steuerserver
DATABASE CONTROL CL SERVER Steuerserver
DATABASE AGGREGAT ERSTELLEN CRAG SERVER Steuerserver
DATABASE Erstellen Sie eine Datenbankereignissitzung CRDS SERVER EINE EREIGNISSITZUNG ERSTELLEN
DATABASE CREATE ASSEMBLY (Erstellen einer Assembly) CRAS SERVER Steuerserver
DATABASE ERSTELLEN EINES ASYMMETRISCHEN SCHLÜSSELS CRAK SERVER Steuerserver
DATABASE ZERTIFIKAT ERSTELLEN CRCF SERVER Steuerserver
DATABASE VERTRAG ERSTELLEN CRSC SERVER Steuerserver
DATABASE DATENBANK ERSTELLEN CRDB SERVER BELIEBIGE DATENBANK ERSTELLEN
DATABASE CREATE-DATABASE-DDL-Ereignisbenachrichtigung CRED SERVER Ddl-Ereignisbenachrichtigung erstellen
DATABASE STANDARD ERSTELLEN CRDF SERVER Steuerserver
DATABASE EXTERNE SPRACHE ERSTELLEN CRLA SERVER Steuerserver
DATABASE EXTERNE BIBLIOTHEK ERSTELLEN CREL SERVER Steuerserver
DATABASE FULLTEXT-KATALOG ERSTELLEN CRFT SERVER Steuerserver
DATABASE CREATE-FUNKTION CRFN SERVER Steuerserver
DATABASE NACHRICHTENTYP ERSTELLEN CRMT SERVER Steuerserver
DATABASE PROZEDUR ERSTELLEN CRPR SERVER Steuerserver
DATABASE WARTESCHLANGE ERSTELLEN CRQU SERVER Steuerserver
DATABASE ERSTELLEN EINER REMOTE-DIENSTBINDUNG CRSB SERVER Steuerserver
DATABASE ROLLE ERSTELLEN CRRL SERVER Steuerserver
DATABASE ROUTE ERSTELLEN CRRT SERVER Steuerserver
DATABASE REGEL ERSTELLEN CRRU SERVER Steuerserver
DATABASE SCHEMA ERSTELLEN CRSM SERVER Steuerserver
DATABASE DIENST ERSTELLEN CRSV SERVER Steuerserver
DATABASE SYMMETRISCHER SCHLÜSSEL ERSTELLEN CRSK SERVER Steuerserver
DATABASE SYNONYM ERSTELLEN CRSN SERVER Steuerserver
DATABASE CREATE TABLE CRTB SERVER Steuerserver
DATABASE TYPE ERSTELLEN CRTY SERVER Steuerserver
DATABASE BENUTZER ERSTELLEN CUSR SERVER Steuerserver
DATABASE ANSICHT ERSTELLEN CRVW SERVER Steuerserver
DATABASE ERSTELLEN EINER XML-SCHEMAAUFLISTUNG CRXS SERVER Steuerserver
DATABASE DELETE DL SERVER Steuerserver
DATABASE LÖSCHE JEDE DATENBANKEIGNIS-SITZUNG DRDS SERVER JEDE EREIGNISSITZUNG LÖSCHEN
DATABASE LEDGER AKTIVIEREN EL SERVER CONTROL
DATABASE EXECUTE EX SERVER Steuerserver
DATABASE EINEN BELIEBIGEN EXTERNEN ENDPUNKT AUSFÜHREN EAEE SERVER Steuerserver
DATABASE AUSFÜHREN EINES BELIEBIGEN EXTERNEN SKRIPTS EAES

Gilt für SQL Server (SQL Server 2016 (13.x) bis zur aktuellen Version).
SERVER Steuerserver
DATABASE INSERT IN SERVER Steuerserver
DATABASE Verbindung zur Datenbank beenden KIDC

Gilt nur für Azure SQL-Datenbank. Verwenden Sie ALTER ANY CONNECTION in SQL Server.
SERVER ÄNDERN EINER BELIEBIGEN VERBINDUNG
DATABASE REFERENCES RF SERVER Steuerserver
DATABASE SELECT SL SERVER Steuerserver
DATABASE SHOWPLAN SPLN SERVER ALTER TRACE
DATABASE ABONNIEREN VON ABFRAGEBENACHRICHTIGUNGEN SUQN SERVER Steuerserver
DATABASE ÜBERNEHMEN EIGENTUM TO SERVER Steuerserver
DATABASE UNMASK UMSK

Gilt für SQL Server (SQL Server 2016 (13.x) bis zur aktuellen Version), Azure SQL-Datenbank.
SERVER Steuerserver
DATABASE UPDATE UP SERVER Steuerserver
DATABASE ANZEIGEN EINER BELIEBIGEN SPALTENVERSCHLÜSSELUNGSSCHLÜSSELDEFINITION VWCK

Gilt für SQL Server (SQL Server 2016 (13.x) bis zur aktuellen Version), Azure SQL-Datenbank.
SERVER SERVERSTATUS ANZEIGEN
DATABASE ANZEIGE JEDER SPALTEN-MASTERSCHLÜSSELDEFINITION VWCM

Gilt für SQL Server (SQL Server 2016 (13.x) bis zur aktuellen Version), Azure SQL-Datenbank.
SERVER SERVERSTATUS ANZEIGEN
DATABASE ANZEIGE JEDER SENSITIVITÄTSKLASSIFIZIERUNG VASC SERVER Steuerserver
DATABASE KRYPTOGRAFISCH GESICHERTE DEFINITION ANZEIGEN VCD SERVER ANZEIGEN EINER KRYPTOGRAFISCH GESICHERTEN DEFINITION
DATABASE DATENBANKLEISTUNGSSTATUS ANZEIGEN VDP SERVER SERVERLEISTUNGSSTATUS ANZEIGEN
DATABASE DATENBANKSICHERHEITSÜBERWACHUNG ANZEIGEN VDSA SERVER Steuerserver
DATABASE DATENBANKSICHERHEITSSTATUS ANZEIGEN VDS SERVER SICHERHEITSSTATUS DES SERVERS ANZEIGEN
DATABASE DATENBANKSTATUS ANZEIGEN VWDS SERVER SERVERSTATUS ANZEIGEN
DATABASE Darstellungsdefinition VW SERVER Jede Definition ansehen
DATABASE LEDGER-INHALT ANZEIGEN VLC SERVER CONTROL
DATABASE SICHERHEITSDEFINITION ANZEIGEN VWS SERVER ANZEIGEN EINER SICHERHEITSDEFINITION
DATABASE LEISTUNGSDEFINITION ANZEIGEN VWP SERVER ANZEIGEN EINER BELIEBIGEN LEISTUNGSDEFINITION
DATENBANKBEREICHSBEZOGENE ANMELDEINFORMATIONEN ALTER AL DATABASE CONTROL
DATENBANKBEREICHSBEZOGENE ANMELDEINFORMATIONEN CONTROL CL DATABASE CONTROL
DATENBANKBEREICHSBEZOGENE ANMELDEINFORMATIONEN REFERENCES RF DATABASE REFERENCES
DATENBANKBEREICHSBEZOGENE ANMELDEINFORMATIONEN ÜBERNEHMEN EIGENTUM TO DATABASE CONTROL
DATENBANKBEREICHSBEZOGENE ANMELDEINFORMATIONEN Darstellungsdefinition VW DATABASE Darstellungsdefinition
ENDPOINT ALTER AL SERVER ÄNDERN EINES BELIEBIGEN ENDPUNKTS
ENDPOINT CONNECT CO SERVER Steuerserver
ENDPOINT CONTROL CL SERVER Steuerserver
ENDPOINT ÜBERNEHMEN EIGENTUM TO SERVER Steuerserver
ENDPOINT Darstellungsdefinition VW SERVER Jede Definition ansehen
Volltextkatalog ALTER AL DATABASE ÄNDERN EINES VOLLSTÄNDIGEN TEXTKATALOGS
Volltextkatalog CONTROL CL DATABASE CONTROL
Volltextkatalog REFERENCES RF DATABASE REFERENCES
Volltextkatalog ÜBERNEHMEN EIGENTUM TO DATABASE CONTROL
Volltextkatalog Darstellungsdefinition VW DATABASE Darstellungsdefinition
VOLLTEXT-STOPPLISTE ALTER AL DATABASE ÄNDERN EINES VOLLSTÄNDIGEN TEXTKATALOGS
VOLLTEXT-STOPPLISTE CONTROL CL DATABASE CONTROL
VOLLTEXT-STOPPLISTE REFERENCES RF DATABASE REFERENCES
VOLLTEXT-STOPPLISTE ÜBERNEHMEN EIGENTUM TO DATABASE CONTROL
VOLLTEXT-STOPPLISTE Darstellungsdefinition VW DATABASE Darstellungsdefinition
LOGIN ALTER AL SERVER ÄNDERN ALLER ANMELDUNGEN
LOGIN CONTROL CL SERVER Steuerserver
LOGIN IMPERSONATE IM SERVER Steuerserver
LOGIN Darstellungsdefinition VW SERVER Jede Definition ansehen
NACHRICHTENTYP ALTER AL DATABASE ÄNDERN EINES BELIEBIGEN NACHRICHTENTYPS
NACHRICHTENTYP CONTROL CL DATABASE CONTROL
NACHRICHTENTYP REFERENCES RF DATABASE REFERENCES
NACHRICHTENTYP ÜBERNEHMEN EIGENTUM TO DATABASE CONTROL
NACHRICHTENTYP Darstellungsdefinition VW DATABASE Darstellungsdefinition
OBJECT ALTER AL SCHEMA ALTER
OBJECT CONTROL CL SCHEMA CONTROL
OBJECT DELETE DL SCHEMA DELETE
OBJECT EXECUTE EX SCHEMA EXECUTE
OBJECT INSERT IN SCHEMA INSERT
OBJECT RECEIVE RC SCHEMA CONTROL
OBJECT REFERENCES RF SCHEMA REFERENCES
OBJECT SELECT SL SCHEMA SELECT
OBJECT ÜBERNEHMEN EIGENTUM TO SCHEMA CONTROL
OBJECT UNMASK UMSK SCHEMA UNMASK
OBJECT UPDATE UP SCHEMA UPDATE
OBJECT ÄNDERUNGSNACHVERFOLGUNG ANZEIGEN VWCT SCHEMA ÄNDERUNGSNACHVERFOLGUNG ANZEIGEN
OBJECT Darstellungsdefinition VW SCHEMA Darstellungsdefinition
REMOTEDIENSTBINDUNG ALTER AL DATABASE ÄNDERN JEDER REMOTE-DIENST-BINDUNG
REMOTEDIENSTBINDUNG CONTROL CL DATABASE CONTROL
REMOTEDIENSTBINDUNG ÜBERNEHMEN EIGENTUM TO DATABASE CONTROL
REMOTEDIENSTBINDUNG Darstellungsdefinition VW DATABASE Darstellungsdefinition
ROLE ALTER AL DATABASE ÄNDERN EINER BELIEBIGEN ROLLE
ROLE CONTROL CL DATABASE CONTROL
ROLE ÜBERNEHMEN EIGENTUM TO DATABASE CONTROL
ROLE Darstellungsdefinition VW DATABASE Darstellungsdefinition
ROUTE ALTER AL DATABASE ÄNDERN EINER BELIEBIGEN ROUTE
ROUTE CONTROL CL DATABASE CONTROL
ROUTE ÜBERNEHMEN EIGENTUM TO DATABASE CONTROL
ROUTE Darstellungsdefinition VW DATABASE Darstellungsdefinition
SCHEMA ALTER AL DATABASE ÄNDERN EINES BELIEBIGEN SCHEMAS
SCHEMA CONTROL CL DATABASE CONTROL
SCHEMA SEQUENZ ERSTELLEN CRSO DATABASE CONTROL
SCHEMA DELETE DL DATABASE DELETE
SCHEMA EXECUTE EX DATABASE EXECUTE
SCHEMA INSERT IN DATABASE INSERT
SCHEMA REFERENCES RF DATABASE REFERENCES
SCHEMA SELECT SL DATABASE SELECT
SCHEMA ÜBERNEHMEN EIGENTUM TO DATABASE CONTROL
SCHEMA UNMASK UMSK DATABASE UNMASK
SCHEMA UPDATE UP DATABASE UPDATE
SCHEMA ÄNDERUNGSNACHVERFOLGUNG ANZEIGEN VWCT DATABASE ÄNDERUNGSNACHVERFOLGUNG ANZEIGEN
SCHEMA Darstellungsdefinition VW DATABASE Darstellungsdefinition
Immobilienliste durchsuchen ALTER AL SERVER ÄNDERN EINES VOLLSTÄNDIGEN TEXTKATALOGS
Immobilienliste durchsuchen CONTROL CL SERVER CONTROL
Immobilienliste durchsuchen REFERENCES RF SERVER REFERENCES
Immobilienliste durchsuchen ÜBERNEHMEN EIGENTUM TO SERVER CONTROL
Immobilienliste durchsuchen Darstellungsdefinition VW SERVER Darstellungsdefinition
SERVER VERWALTEN VON MASSENVORGÄNGEN ADBO Nicht anwendbar Nicht anwendbar
SERVER ÄNDERUNG JEDER VERFÜGBARKEITSGRUPPE ALAG Nicht anwendbar Nicht anwendbar
SERVER ÄNDERN EINER BELIEBIGEN VERBINDUNG ALCO Nicht anwendbar Nicht anwendbar
SERVER ÄNDERN EINER BELIEBIGEN ANMELDEINFORMATION ALCD Nicht anwendbar Nicht anwendbar
SERVER ÄNDERN EINER BELIEBIGEN DATENBANK ALDB Nicht anwendbar Nicht anwendbar
SERVER ÄNDERN EINES BELIEBIGEN ENDPUNKTS ALHE Nicht anwendbar Nicht anwendbar
SERVER JEDES EREIGNISBENACHRICHTIGUNG ÄNDERN ALES Nicht anwendbar Nicht anwendbar
SERVER ÄNDERN EINER EREIGNISSITZUNG AAES Nicht anwendbar Nicht anwendbar
SERVER ÄNDERE JEDES EREIGNISSITZUNG HINZUFÜGEN EREIGNIS LSAE Nicht anwendbar Nicht anwendbar
SERVER ANY EVENT SESSION ÄNDERN ZIEL HINZUFÜGEN LSAT Nicht anwendbar Nicht anwendbar
SERVER ÄNDERN EINER EREIGNISSITZUNG DEAKTIVIEREN DES Nicht anwendbar Nicht anwendbar
SERVER ÄNDERN SIE JEDES EREIGNISSESSION LÖSCHEN EREIGNIS LSDE Nicht anwendbar Nicht anwendbar
SERVER ÄNDERN EINES EREIGNISSITZUNGSABLAGEZIELS LSDT Nicht anwendbar Nicht anwendbar
SERVER ALTER ANY EVENT SESSION AKTIVIEREN EES Nicht anwendbar Nicht anwendbar
SERVER ÄNDERE ALLE EREIGNISSESSION-OPTIONEN LESO Nicht anwendbar Nicht anwendbar
SERVER ÄNDERN EINES BELIEBIGEN VERKNÜPFTEN SERVERS ALLS Nicht anwendbar Nicht anwendbar
SERVER ÄNDERN ALLER ANMELDUNGEN ALLG Nicht anwendbar Nicht anwendbar
SERVER ÄNDERN EINER SERVERÜBERWACHUNG ALAA Nicht anwendbar Nicht anwendbar
SERVER ÄNDERN EINER BELIEBIGEN SERVERROLLE ALSR Nicht anwendbar Nicht anwendbar
SERVER ALTER RESOURCES ALRS Nicht anwendbar Nicht anwendbar
SERVER SERVERSTATUS ÄNDERN ALSS Nicht anwendbar Nicht anwendbar
SERVER EINSTELLUNGEN ÄNDERN ALST Nicht anwendbar Nicht anwendbar
SERVER ALTER TRACE ALTR Nicht anwendbar Nicht anwendbar
SERVER AUTHENTIFIZIEREN DES SERVERS AUTH Nicht anwendbar Nicht anwendbar
SERVER VERBINDEN EINER BELIEBIGEN DATENBANK CADB Nicht anwendbar Nicht anwendbar
SERVER CONNECT SQL COSQ Nicht anwendbar Nicht anwendbar
SERVER Steuerserver CL Nicht anwendbar Nicht anwendbar
SERVER BELIEBIGE DATENBANK ERSTELLEN CRDB Nicht anwendbar Nicht anwendbar
SERVER ERSTELLEN SIE EINE VERFÜGBARKEITSGRUPPE CRAC Nicht anwendbar Nicht anwendbar
SERVER Ddl-Ereignisbenachrichtigung erstellen CRDE Nicht anwendbar Nicht anwendbar
SERVER ENDPUNKT ERSTELLEN CRHE Nicht anwendbar Nicht anwendbar
SERVER SERVERROLLE ERSTELLEN CRSR Nicht anwendbar Nicht anwendbar
SERVER ERSTELLEN SIE EINE BENACHRICHTIGUNG FÜR VERFOLGUNGSVORGÄNGE CRTE Nicht anwendbar Nicht anwendbar
SERVER ASSEMBLY FÜR EXTERNEN ZUGRIFF XA Nicht anwendbar Nicht anwendbar
SERVER IDENTITÄTSWECHSEL JEDER ANMELDUNG IAL Nicht anwendbar Nicht anwendbar
SERVER ALLE SICHERUNGSFÄHIGEN BENUTZER AUSWÄHLEN SUS Nicht anwendbar Nicht anwendbar
SERVER SHUTDOWN SHDN Nicht anwendbar Nicht anwendbar
SERVER UNSICHERE MONTAGE XU Nicht anwendbar Nicht anwendbar
SERVER Jede Datenbank anzeigen VWDB Nicht anwendbar Nicht anwendbar
SERVER Jede Definition ansehen VWAD Nicht anwendbar Nicht anwendbar
SERVER SERVERSTATUS ANZEIGEN VWSS Nicht anwendbar Nicht anwendbar
Serverrolle ALTER AL SERVER ÄNDERN EINER BELIEBIGEN SERVERROLLE
Serverrolle CONTROL CL SERVER Steuerserver
Serverrolle ÜBERNEHMEN EIGENTUM TO SERVER Steuerserver
Serverrolle Darstellungsdefinition VW SERVER Jede Definition ansehen
SERVICE ALTER AL DATABASE ÄNDERE JEDEN DIENST
SERVICE CONTROL CL DATABASE CONTROL
SERVICE SEND SN DATABASE CONTROL
SERVICE ÜBERNEHMEN EIGENTUM TO DATABASE CONTROL
SERVICE Darstellungsdefinition VW DATABASE Darstellungsdefinition
symmetrischer Schlüssel ALTER AL DATABASE ÄNDERN EINES SYMMETRISCHEN SCHLÜSSELS
symmetrischer Schlüssel CONTROL CL DATABASE CONTROL
symmetrischer Schlüssel REFERENCES RF DATABASE REFERENCES
symmetrischer Schlüssel ÜBERNEHMEN EIGENTUM TO DATABASE CONTROL
symmetrischer Schlüssel Darstellungsdefinition VW DATABASE Darstellungsdefinition
TYPE CONTROL CL SCHEMA CONTROL
TYPE EXECUTE EX SCHEMA EXECUTE
TYPE REFERENCES RF SCHEMA REFERENCES
TYPE ÜBERNEHMEN EIGENTUM TO SCHEMA CONTROL
TYPE Darstellungsdefinition VW SCHEMA Darstellungsdefinition
USER ALTER AL DATABASE ÄNDERN EINES BELIEBIGEN BENUTZERS
USER CONTROL CL DATABASE CONTROL
USER IMPERSONATE IM DATABASE CONTROL
USER Darstellungsdefinition VW DATABASE Darstellungsdefinition
XML-SCHEMA-SAMMLUNG ALTER AL SCHEMA ALTER
XML-SCHEMA-SAMMLUNG CONTROL CL SCHEMA CONTROL
XML-SCHEMA-SAMMLUNG EXECUTE EX SCHEMA EXECUTE
XML-SCHEMA-SAMMLUNG REFERENCES RF SCHEMA REFERENCES
XML-SCHEMA-SAMMLUNG ÜBERNEHMEN EIGENTUM TO SCHEMA CONTROL
XML-SCHEMA-SAMMLUNG Darstellungsdefinition VW SCHEMA Darstellungsdefinition

Neue granulare Berechtigungen, die SQL Server 2022 hinzugefügt wurden

Die folgenden Berechtigungen werden SQL Server 2022 hinzugefügt:

  • 10 neue Berechtigungen wurden hinzugefügt, um den Zugriff auf Systemmetadaten zu ermöglichen.

  • Für erweiterte Ereignisse wurden 18 neue Berechtigungen hinzugefügt.

  • 9 neue Berechtigungen wurden in Bezug auf sicherheitsbezogene Objekte hinzugefügt.

  • 4 Berechtigungen wurden für Ledger hinzugefügt.

  • 3 zusätzliche Datenbankberechtigungen.

Weitere Informationen finden Sie unter Neue granulare Berechtigungen für SQL Server 2022 und Azure SQL, um die Einhaltung von PoLP zu verbessern.

Zugriff auf Berechtigungen für Systemmetadaten

Serverebene:

  • ANZEIGEN EINER SICHERHEITSDEFINITION
  • ANZEIGEN EINER BELIEBIGEN LEISTUNGSDEFINITION
  • SICHERHEITSSTATUS DES SERVERS ANZEIGEN
  • SERVERLEISTUNGSSTATUS ANZEIGEN
  • ANZEIGEN EINER KRYPTOGRAFISCH GESICHERTEN DEFINITION

Datenbankebene:

  • DATENBANKSICHERHEITSSTATUS ANZEIGEN
  • DATENBANKLEISTUNGSSTATUS ANZEIGEN
  • SICHERHEITSDEFINITION ANZEIGEN
  • LEISTUNGSDEFINITION ANZEIGEN
  • KRYPTOGRAFISCH GESICHERTE DEFINITION ANZEIGEN

Berechtigungen für erweiterte Ereignisse

Serverebene:

  • EINE EREIGNISSITZUNG ERSTELLEN
  • JEDE EREIGNISSITZUNG LÖSCHEN
  • ÄNDERE ALLE EREIGNISSESSION-OPTIONEN
  • ÄNDERE JEDES EREIGNISSITZUNG HINZUFÜGEN EREIGNIS
  • ÄNDERN SIE JEDES EREIGNISSESSION LÖSCHEN EREIGNIS
  • ALTER ANY EVENT SESSION AKTIVIEREN
  • ÄNDERN EINER EREIGNISSITZUNG DEAKTIVIEREN
  • ANY EVENT SESSION ÄNDERN ZIEL HINZUFÜGEN
  • ÄNDERN EINES EREIGNISSITZUNGSABLAGEZIELS

Alle diese Berechtigungen unterliegen der gleichen übergeordneten Berechtigung: ALTER ANY EVENT SESSION

Datenbankebene:

  • Erstellen Sie eine Datenbankereignissitzung
  • LÖSCHE JEDE DATENBANKEIGNIS-SITZUNG
  • ÄNDERN EINER DATENBANKEREIGNISSITZUNGSOPTION
  • ÄNDERN EINER DATENBANKEREIGNIS SITZUNG NEUES EREIGNIS HINZUFÜGEN
  • ALTER ANY DATABASE-EVENTSITZUNG EREIGNIS LÖSCHEN
  • ALTERIERE JEGLICHE DATENBANKEREIGNISSITZUNG AKTIVIEREN
  • ÄNDERN EINER DATENBANKEREIGNISSITZUNG DEAKTIVIEREN
  • ALTER ANY DATABASE EVENT SESSION ADD TARGET
  • ÄNDERN EINES DROPZIELS FÜR DATENBANKEREIGNISSITZUNGEN

Alle diese Berechtigungen unterliegen der gleichen übergeordneten Berechtigung: ALTER ANY DATABASE EVENT SESSION

  • KONTROLLE (BERECHTIGUNGSNACHWEISE)
  • LOGIN ERSTELLEN
  • BENUTZER ERSTELLEN
  • REFERENZEN (BERECHTIGUNGEN)
  • ENTMASKIEREN (OBJEKT)
  • UNMASK (SCHEMA)
  • ANZEIGEN EINES FEHLERPROTOKOLLS
  • SERVER-SICHERHEITSAUDIT ANZEIGEN
  • DATENBANKSICHERHEITSÜBERWACHUNG ANZEIGEN

Ledger-Berechtigungen

  • ALTER LEDGER
  • ALTER LEDGER-KONFIGURATION
  • LEDGER AKTIVIEREN
  • LEDGER-INHALT ANZEIGEN

Andere Berechtigungen für Datenbank

  • ÄNDERN EINES EXTERNEN AUFTRAGS
  • ÄNDERN EINES EXTERNEN DATENSTROMS
  • EINEN BELIEBIGEN EXTERNEN ENDPUNKT AUSFÜHREN

Zusammenfassung des Algorithmus zur Berechtigungsprüfung

Die Prüfung von Berechtigungen kann sehr komplex sein. Der Algorithmus für die Berechtigungsprüfung umfasst überlappende Gruppenmitgliedschaften und Besitzverkettung, explizite und implizite Berechtigungen und kann von den Berechtigungen für sicherungsfähige Klassen, in denen die sicherungsfähige Entität enthalten ist, beeinflusst werden. Die allgemeine Vorgehensweise des Algorithmus besteht darin, alle relevanten Berechtigungen zu sammeln. Wenn keine blockierende DENY-Anweisung gefunden wird, sucht der Algorithmus nach einer GRANT-Anweisung mit ausreichenden Zugriffsberechtigungen. Der Algorithmus enthält drei wesentliche Elemente, den Sicherheitskontext, den Berechtigungsbereichund die erforderlichen Berechtigung.

Note

Sie können keine Berechtigungen für sa, dbo, den Entitätsbesitzer, information_schema, sys oder sich selbst erteilen, verweigern oder widerrufen.

  • Sicherheitskontext

    Dies ist die Gruppe von Prinzipalen, die Berechtigungen für die Zugriffsüberprüfung einbringen. Diese Berechtigungen beziehen sich auf den aktuellen Anmeldenamen oder Benutzer, es sei denn, der Sicherheitskontext wurde mithilfe der EXECUTE AS-Anweisung in einen anderen Anmeldenamen oder Benutzer geändert. Der Sicherheitskontext schließt die folgenden Prinzipale ein:

    • Die Anmeldung

    • Der Benutzer

    • Rollenmitgliedschaften

    • Windows-Gruppenmitgliedschaften

    • Bei Verwendung der Modulsignierung sind dies ein beliebiger Anmeldename oder ein beliebiges Benutzerkonto für das Zertifikat, das zum Signieren des vom Benutzer derzeit ausgeführten Moduls verwendet wird, und die zugehörigen Rollenmitgliedschaften dieses Prinzipals.

  • Berechtigungsraum

    Dies sind die sicherungsfähige Entität und alle sicherungsfähigen Klassen, in denen das sicherungsfähige Element enthalten ist. Eine Tabelle (eine sicherungsfähige Entität) ist z. B. in der sicherungsfähigen Klasse des Schemas und in der sicherungsfähigen Klasse der Datenbank enthalten. Berechtigungen auf Tabellen-, Schema-, Datenbank- und Serverebene können sich auf den Zugriff auswirken. Weitere Informationen finden Sie unter Berechtigungshierarchie (Datenbank-Engine).

  • Erforderliche Berechtigung

    Die Art der erforderlichen Berechtigung. Beispielsweise INSERT, UPDATE, DELETE, SELECT, EXECUTE, ALTER, CONTROL usw.

    Für den Zugriff können wie in den folgenden Beispielen mehrere Berechtigungen erforderlich sein:

    • Eine gespeicherte Prozedur kann sowohl die EXECUTE-Berechtigung für die gespeicherte Prozedur als auch die INSERT-Berechtigung für mehrere Tabellen erfordern, auf die von der gespeicherten Prozedur verwiesen wird.

    • Eine dynamische Verwaltungssicht kann sowohl die VIEW SERVER STATE-Berechtigung als auch SELECT-Berechtigung für die Sicht erfordern.

Allgemeine Schritte des Algorithmus

Wenn der Algorithmus ermittelt, ob Zugriff auf das sicherungsfähige Element erteilt werden soll, können die in diesem Zusammenhang ausgeführten Schritte sehr unterschiedlich sein. Dies hängt von den jeweiligen Prinzipalen und sicherungsfähigen Elementen ab. Der Algorithmus führt jedoch die folgenden allgemeinen Schritte aus:

  1. Umgehen der Berechtigungsprüfung, wenn der Anmeldename ein Mitglied der festen Serverrolle sysadmin oder der Benutzer der dbo-Benutzer der aktuellen Datenbank ist.

  2. Erteilen des Zugriffs, wenn die Besitzverkettung anwendbar ist und die Zugriffsprüfung für das Objekt an früherer Stelle in der Kette die Sicherheitsprüfung erfolgreich war.

  3. Aggregieren der Identitäten, die dem Aufrufer zum Erstellen des Sicherheitskontexts zugeordnet sind, auf Server- und Datenbankebene sowie auf Ebene des signierten Moduls.

  4. Sammeln aller Berechtigungen, die für diesen Berechtigungsbereicherteilt oder verweigert wurden, in diesem Sicherheitskontext. Die Berechtigung kann explizit als GRANT, GRANT WITH GRANT oder DENY angegeben werden; oder die Berechtigungen können als implizite oder abdeckende GRANT-Berechtigung oder DENY-Berechtigung angegeben werden. Die CONTROL-Berechtigung für ein Schema impliziert z. B. CONTROL für eine Tabelle. CONTROL für eine Tabelle impliziert SELECT. Wenn CONTROL für das Schema erteilt wurde, wird folglich SELECT für die Tabelle erteilt. Wenn CONTROL für die Tabelle verweigert wurde, wird SELECT für die Tabelle verweigert.

    Note

    Durch eine GRANT-Berechtigung auf Spaltenebene wird eine DENY-Berechtigung auf Objektebene überschrieben. Weitere Informationen finden Sie unter DENY-Objektberechtigungen.

  5. Identifizieren Sie die erforderlichen Berechtigung.

  6. Die Berechtigungsprüfung ist nicht bestanden, wenn die erforderlichen Berechtigung für eine der Identitäten im Sicherheitskontext der Objekte im Berechtigungsbereich direkt oder implizit verweigert werden.

  7. Die Berechtigungsprüfung ist bestanden, wenn die erforderlichen Berechtigung nicht verweigert wurde, und die erforderlichen Berechtigung für eine der Identitäten im Sicherheitskontext eines beliebigen Objekts im Berechtigungsbereichdirekt oder implizit eine GRANT-Berechtigung oder GRANT WITH GRANT-Berechtigung enthält.

Spezielle Aspekte für Berechtigungen auf Spaltenebene

Berechtigungen auf Spaltenebene werden mit der Syntax <Tabellenname>(<Spaltenname>) erteilt. Beispiel:

GRANT SELECT ON OBJECT::Customer(CustomerName) TO UserJoe;

Ein DENY auf der Tabelle wird mit einem GRANT auf einer Spalte überschrieben. Ein nachfolgendes DENY auf der Tabelle entfernt jedoch das GRANT auf der Spalte.

Examples

In den Beispielen dieses Abschnitts wird veranschaulicht, wie Berechtigungsinformationen abgerufen werden.

A. Zurückgeben der vollständigen Liste erteilbarer Berechtigungen

Die folgende Anweisung gibt mithilfe der fn_builtin_permissions-Funktion alle Datenbank-Engine-Berechtigungen zurück. Weitere Informationen finden Sie unter sys.fn_builtin_permissions.

SELECT * FROM fn_builtin_permissions(default);
GO

B. Zurückgeben der Berechtigungen für eine bestimmte Objektklasse

Im folgenden Beispiel wird fn_builtin_permissions verwendet, um alle Berechtigungen anzuzeigen, die für eine Kategorie des sicherungsfähigen Elements verfügbar sind. Im Beispiel werden Berechtigungen für Assemblys zurückgegeben.

SELECT * FROM fn_builtin_permissions('assembly');
GO

C. Zurückgeben der Berechtigungen, die dem ausführenden Prinzipal für ein Objekt erteilt wurden

Im folgenden Beispiel wird mithilfe von fn_my_permissions eine Liste der effektiven Berechtigungen zurückgegeben, die vom aufrufenden Prinzipal für ein bestimmtes sicherungsfähiges Element gespeichert werden. Im Beispiel werden Berechtigungen für ein Objekt mit dem Namen Orders55 zurückgegeben. Weitere Informationen finden Sie unter sys.fn_my_permissions.

SELECT * FROM fn_my_permissions('Orders55', 'object');
GO

D. Zurückgeben von Berechtigungen, die auf ein angegebenes Objekt angewendet werden können

Im folgenden Beispiel werden Berechtigungen für ein Objekt namens Yttriumzurückgegeben. Die integrierte OBJECT_ID-Funktion zum Abrufen der ID des Yttrium-Objekts verwendet wird.

SELECT * FROM sys.database_permissions
    WHERE major_id = OBJECT_ID('Yttrium');
GO