DENY-Schemaberechtigungen (Transact-SQL)

Gilt für:SQL ServerAzure SQL-DatenbankAzure SQL Managed Instance

Verweigert die Berechtigungen für ein Schema.

Transact-SQL-Syntaxkonventionen

Syntax

DENY permission  [ ,...n ] } ON SCHEMA :: schema_name  
    TO database_principal [ ,...n ]   
    [ CASCADE ]  
        [ AS denying_principal ]  

Hinweis

Informationen zum Anzeigen der Transact-SQL-Syntax für SQL Server 2014 (12.x) und früher finden Sie unter Dokumentation zu früheren Versionen.

Argumente

permission
Gibt eine Berechtigung an, die für ein Schema verweigert werden kann. Eine Liste dieser Berechtigungen finden Sie unter „Hinweise“ weiter unten in diesem Artikel.

ON SCHEMA :: schema*_name*
Gibt das Schema an, für das die Berechtigung verweigert wird. Der Bereichsqualifizierer :: ist erforderlich.

database_principal
Gibt den Prinzipal an, für den die Berechtigung verweigert wird. database_principal kann die folgenden Prinzipale aufweisen:

  • Datenbankbenutzer
  • Datenbankrolle
  • Anwendungsrolle
  • Einem Windows-Anmeldenamen zugeordneter Datenbankbenutzer
  • Einer Windows-Gruppe zugeordneter Datenbankbenutzer
  • Einem Zertifikat zugeordneter Datenbankbenutzer
  • Einem asymmetrischen Schlüssel zugeordneter Datenbankbenutzer
  • Keinem Serverprinzipal zugeordneter Datenbankbenutzer.

CASCADE
verweigert die Berechtigung für andere Prinzipale, für die das angegebene Argument database_principal die Berechtigung erteilt hat.

denying_principal
Gibt einen Prinzipal an, von dem der Prinzipal, der diese Abfrage ausführt, das Recht zum Verweigern der Berechtigung ableitet. denying_principal kann die folgenden Prinzipale aufweisen:

  • Datenbankbenutzer
  • Datenbankrolle
  • Anwendungsrolle
  • Einem Windows-Anmeldenamen zugeordneter Datenbankbenutzer
  • Einer Windows-Gruppe zugeordneter Datenbankbenutzer
  • Einem Zertifikat zugeordneter Datenbankbenutzer
  • Einem asymmetrischen Schlüssel zugeordneter Datenbankbenutzer
  • Keinem Serverprinzipal zugeordneter Datenbankbenutzer.

Hinweise

Ein Schema ist ein sicherungsfähiges Element auf Datenbankebene. Es ist in der Datenbank enthalten, die in der Berechtigungshierarchie übergeordnet ist. Die spezifischsten und restriktivsten Berechtigungen, die für ein Schema verweigert werden können, sind in der folgenden Tabelle aufgeführt. Die Tabelle zeigt allgemeinere Berechtigungen, die andere Berechtigungen implizit enthalten.

Schemaberechtigung Impliziert durch die Schemaberechtigung Impliziert durch Datenbankberechtigung
ALTER CONTROL ALTER ANY SCHEMA
CONTROL CONTROL CONTROL
CREATE SEQUENCE ALTER ALTER ANY SCHEMA
Delete CONTROL Delete
Führen Sie CONTROL Führen Sie
INSERT CONTROL INSERT
REFERENCES CONTROL REFERENCES
SELECT CONTROL SELECT
TAKE OWNERSHIP CONTROL CONTROL
UPDATE CONTROL UPDATE
VIEW CHANGE TRACKING CONTROL CONTROL
VIEW DEFINITION CONTROL VIEW DEFINITION

Berechtigungen

Erfordert die CONTROL-Berechtigung für das Schema. Falls die AS-Option verwendet wird, muss der angegebene Prinzipal das Schema besitzen.

Weitere Informationen

CREATE SCHEMA (Transact-SQL)
DENY (Transact-SQL)
Berechtigungen (Datenbank-Engine)
Prinzipale (Datenbank-Engine)
sys.fn_builtin_permissions (Transact-SQL)
sys.fn_my_permissions (Transact-SQL)
HAS_PERMS_BY_NAME (Transact-SQL)