DENY Databaserechten (Transact-SQL)

Van toepassing op:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform System (PDW)SQL Analytics-eindpunt in Microsoft FabricMagazijn in Microsoft FabricSQL-database in Microsoft Fabric

Machtigingen voor een database in SQL Server worden geweigerd.

Transact-SQL syntaxis-conventies

Syntax

DENY <permission> [ ,...n ]
    TO <database_principal> [ ,...n ] [ CASCADE ]
    [ AS <database_principal> ]

<permission> ::=
    permission | ALL [ PRIVILEGES ]

<database_principal> ::=
    Database_user
  | Database_role
  | Application_role
  | Database_user_mapped_to_Windows_User
  | Database_user_mapped_to_Windows_Group
  | Database_user_mapped_to_certificate
  | Database_user_mapped_to_asymmetric_key
  | Database_user_with_no_login

Arguments

toestemming Hiermee geeft u een machtiging op die kan worden geweigerd voor een database. Zie de sectie Opmerkingen verderop in dit onderwerp voor een lijst met machtigingen.

MET DEZE optie worden niet alle mogelijke machtigingen geweigerd. ALL weigeren is gelijk aan het weigeren van de volgende permissies: BACKUP, LOG, CREATE DATABASE, CREATE DEFAULT, CREATE FUNCTION, , CREATE PROCEDURE, CREATE RULE, CREATE TABLE, en CREATE VIEW. BACKUPDATABASE

BEVOEGDHEDEN opgenomen voor ISO-naleving. Het gedrag van ALL wordt niet gewijzigd.

CASCADE Geeft aan dat de machtiging ook wordt geweigerd aan principals waaraan de opgegeven principal deze heeft verleend.

AS-database_principal <> Hiermee geeft u een principal op waaruit de principal die deze query uitvoert, het recht heeft om de machtiging te weigeren.

Database_user Hiermee geeft u een databasegebruiker.

Database_role Hiermee geeft u een databaserol op.

Application_rolevan toepassing op: SQL Server 2008 (10.0.x) en hoger, SQL Database.

Hiermee geeft u een toepassingsrol op.

Database_user_mapped_to_Windows_User Hiermee geeft u een databasegebruiker die is toegewezen aan een Windows-gebruiker.

Database_user_mapped_to_Windows_Group Hiermee geeft u een databasegebruiker die is toegewezen aan een Windows-groep.

Database_user_mapped_to_certificate Hiermee geeft u een databasegebruiker die is toegewezen aan een certificaat.

Database_user_mapped_to_asymmetric_key Hiermee geeft u een databasegebruiker die is toegewezen aan een asymmetrische sleutel.

Database_user_with_no_login Hiermee geeft u een databasegebruiker zonder bijbehorende principal op serverniveau op.

Remarks

Een database is een beveiligbaar dat is opgenomen door de server die het bovenliggende element in de machtigingshiërarchie is. De meest specifieke en beperkte machtigingen die voor een database kunnen worden geweigerd, worden vermeld in de volgende tabel, samen met de meer algemene machtigingen die ze bevatten door implicatie.

Database-toestemming Impliciet door databasemachtiging Impliciet door servermachtiging
BEHEER DATABASE VAN BULKOPERATIES
Van toepassing op: SQL Database.
CONTROL besturingsserver
ALTER CONTROL WIJZIG EEN DATABASE
WIJZIG EEN APPLICATION ROLE ALTER besturingsserver
WIJZIG EEN ASSEMBLY ALTER besturingsserver
WIJZIG EEN ASYMMETRIC KEY ALTER besturingsserver
WIJZIG EEN CERTIFICATE ALTER besturingsserver
WIJZIG EEN COLUMN ENCRYPTION KEY ALTER besturingsserver
VERANDER ELKE COLUMN MASTER KEY DEFINITIE ALTER besturingsserver
WIJZIG EEN CONTRACT ALTER besturingsserver
VERANDER ELKE DATABASE AUDIT ALTER WIJZIG EEN SERVER AUDIT
VERANDER ELKE DATABASE DDL TRIGGER ALTER besturingsserver
ALTER ANY DATABASEEVENT NOTIFICATION ALTER WIJZIG EEN EVENT NOTIFICATION
ALTER ANY DATABASEEVENT SESSION
Van toepassing op: Azure SQL Database.
ALTER WIJZIG EEN EVENT SESSION
WIJZIG EEN DATABASE SCOPED CONFIGURATION
van toepassing op: SQL Server 2016 (13.x) en hoger, SQL Database.
CONTROL besturingsserver
ELKE DATASPACE WIJZIGEN ALTER besturingsserver
WIJZIG EEN EXTERNAL DATA SOURCE ALTER besturingsserver
WIJZIG EEN EXTERNAL FILE FORMAT ALTER besturingsserver
WIJZIG EEN EXTERNAL LIBRARY
Van toepassing op: SQL Server 2017 (14.x).
CONTROL besturingsserver
WIJZIG EEN FULLTEXT CATALOG ALTER besturingsserver
EEN MASKER WIJZIGEN CONTROL besturingsserver
WIJZIG EEN MESSAGE TYPE ALTER besturingsserver
WIJZIG EEN REMOTE SERVICE BINDING ALTER besturingsserver
WIJZIG EEN ROLE ALTER besturingsserver
WIJZIG EEN ROUTE ALTER besturingsserver
WIJZIG EEN SECURITY POLICY
Van toepassing op: SQL Server 2016 (13.x) en hoger, Azure SQL Database.
CONTROL besturingsserver
WIJZIG EEN SCHEMA ALTER besturingsserver
WIJZIG EEN SERVICE ALTER besturingsserver
WIJZIG EEN SYMMETRIC KEY ALTER besturingsserver
WIJZIG EEN USER ALTER besturingsserver
AUTHENTICATE CONTROL VERIFICATIESERVER
BACKUP DATABASE CONTROL besturingsserver
BACKUP LOG CONTROL besturingsserver
CHECKPOINT CONTROL besturingsserver
CONNECT CONNECTREPLICATIE besturingsserver
CONNECTREPLICATIE CONTROL besturingsserver
CONTROL CONTROL besturingsserver
CREATE AGGREGATE ALTER besturingsserver
CREATE ASSEMBLY WIJZIG EEN ASSEMBLY besturingsserver
CREATE ASYMMETRIC KEY WIJZIG EEN ASYMMETRIC KEY besturingsserver
CREATE CERTIFICATE WIJZIG EEN CERTIFICATE besturingsserver
CREATE CONTRACT WIJZIG EEN CONTRACT besturingsserver
CREATE DATABASE CONTROL MAAK ELKE DATABASE
CREATE DATABASE DDL EVENT NOTIFICATION ALTER ANY DATABASEEVENT NOTIFICATION CREATE DDL EVENT NOTIFICATION
CREATE DEFAULT ALTER besturingsserver
CREATE FULLTEXT CATALOG WIJZIG EEN FULLTEXT CATALOG besturingsserver
CREATE FUNCTION ALTER besturingsserver
CREATE MESSAGE TYPE WIJZIG EEN MESSAGE TYPE besturingsserver
CREATE PROCEDURE ALTER besturingsserver
CREATE QUEUE ALTER besturingsserver
CREATE REMOTE SERVICE BINDING WIJZIG EEN REMOTE SERVICE BINDING besturingsserver
CREATE ROLE WIJZIG EEN ROLE besturingsserver
CREATE ROUTE WIJZIG EEN ROUTE besturingsserver
CREATE RULE ALTER besturingsserver
CREATE SCHEMA WIJZIG EEN SCHEMA besturingsserver
CREATE SERVICE WIJZIG EEN SERVICE besturingsserver
CREATE SYMMETRIC KEY WIJZIG EEN SYMMETRIC KEY besturingsserver
CREATE SYNONYM ALTER besturingsserver
CREATE TABLE ALTER besturingsserver
CREATE TYPE ALTER besturingsserver
CREATE VIEW ALTER besturingsserver
CREATE XML SCHEMA COLLECTION ALTER besturingsserver
DELETE CONTROL besturingsserver
EXECUTE CONTROL besturingsserver
EEN EXTERN SCRIPT UITVOEREN
Van toepassing op: SQL Server 2016 (13.x).
CONTROL besturingsserver
INSERT CONTROL besturingsserver
KILL DATABASE VERBINDING
Van toepassing op: Azure SQL Database.
CONTROL ELKE VERBINDING WIJZIGEN
REFERENCES CONTROL besturingsserver
SELECT CONTROL besturingsserver
SHOWPLAN CONTROL ALTER TRACE (gebruikersmachtiging voor het traceren van gebeurtenissen)
MELDINGEN VOOR ABONNEREN-QUERY'S CONTROL besturingsserver
EIGENAAR CONTROL besturingsserver
UNMASK CONTROL besturingsserver
UPDATE CONTROL besturingsserver
VIEW ELKE COLUMN ENCRYPTION KEY CONTROL VIEW ELKE DEFINITIE
VIEW ELKE MASTER KEY DEFINITIE CONTROL VIEW ELKE DEFINITIE
VIEW DATABASE STAAT CONTROL VIEW SERVERSTATUS
VIEW DEFINITIE CONTROL VIEW ELKE DEFINITIE

Permissions

De principal die deze instructie uitvoert (of de principal die is opgegeven met de AS-optie) moet controlmachtiging hebben voor de database of een hogere machtiging die CONTROL-machtiging voor de database impliceert.

Als u de AS-optie gebruikt, moet de opgegeven principal eigenaar zijn van de database.

Examples

A. Machtiging voor het maken van certificaten weigeren

In het volgende voorbeeld wordt CREATE CERTIFICATE de machtiging voor de AdventureWorks2025 database voor de gebruiker MelanieKgeweigerd.

USE AdventureWorks2022;
DENY CREATE CERTIFICATE TO MelanieK;
GO

B. De machtiging VERWIJZINGEN voor een toepassingsrol weigeren

In het volgende voorbeeld wordt de machtiging voor de database voor de REFERENCES toepassingsrol AdventureWorks2025AuditMonitorgeweigerd.

Van toepassing op: SQL Server 2008 (10.0.x) en hoger, SQL Database.

USE AdventureWorks2022;
DENY REFERENCES TO AuditMonitor;
GO

C. DEFINITIE ontkennen VIEW met CASCADE

In het volgende voorbeeld wordt VIEW DEFINITION de machtiging voor de database geweigerd aan de AdventureWorks2025 gebruiker CarmineEs en aan alle principals waaraan CarmineEs machtigingen zijn verleend VIEW DEFINITION .

USE AdventureWorks2022;
DENY VIEW DEFINITION TO CarmineEs CASCADE;
GO

Zie ook