Delen via


Machtigingen voor weigeren voor databases (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. Alles weigeren is gelijk aan het weigeren van de volgende machtigingen: BACK-UPDATABASE, BACK-UPLOGBOEK, CREATE DATABASE, CREATE DEFAULT, CREATE FUNCTION, CREATE PROCEDURE, CREATE RULE, CREATE TABLE en CREATE VIEW.

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
DE DATABASE BULKOPERATIES BEHEEREN
Van toepassing op: SQL Database.
CONTROL besturingsserver
ALTER CONTROL ELKE DATABASE WIJZIGEN
ELKE TOEPASSINGSROL WIJZIGEN ALTER besturingsserver
ELKE ASSEMBLY WIJZIGEN ALTER besturingsserver
ASYMMETRISCHE SLEUTEL WIJZIGEN ALTER besturingsserver
ELK CERTIFICAAT WIJZIGEN ALTER besturingsserver
EEN KOLOMVERSLEUTELINGSSLEUTEL WIJZIGEN ALTER besturingsserver
EEN KOLOMHOOFDSLEUTELDEFINITIE WIJZIGEN ALTER besturingsserver
EEN CONTRACT WIJZIGEN ALTER besturingsserver
DATABASECONTROLE WIJZIGEN ALTER SERVERCONTROLE WIJZIGEN
EEN DDL-TRIGGER VOOR DATABASES WIJZIGEN ALTER besturingsserver
ELKE MELDING VOOR DATABASE-GEBEURTENIS WIJZIGEN ALTER GEBEURTENISMELDING WIJZIGEN
EEN GEBEURTENISSESSIE VOOR DE DATABASE WIJZIGEN
Van toepassing op: Azure SQL Database.
ALTER EEN GEBEURTENISSESSIE WIJZIGEN
CONFIGURATIE VAN DATABASEBEREIK WIJZIGEN
van toepassing op: SQL Server 2016 (13.x) en hoger, SQL Database.
CONTROL besturingsserver
ELKE DATASPACE WIJZIGEN ALTER besturingsserver
ELKE EXTERNE GEGEVENSBRON WIJZIGEN ALTER besturingsserver
WIJZIGEN VAN ELKE EXTERNE BESTANDSINDELING ALTER besturingsserver
EEN EXTERNE BIBLIOTHEEK WIJZIGEN
Van toepassing op: SQL Server 2017 (14.x).
CONTROL besturingsserver
ELKE VOLLEDIGE TEKSTCATALOGUS WIJZIGEN ALTER besturingsserver
EEN MASKER WIJZIGEN CONTROL besturingsserver
ELK BERICHTTYPE WIJZIGEN ALTER besturingsserver
EEN EXTERNE SERVICEBINDING WIJZIGEN ALTER besturingsserver
ELKE ROL WIJZIGEN ALTER besturingsserver
ELKE ROUTE WIJZIGEN ALTER besturingsserver
BEVEILIGINGSBELEID WIJZIGEN
Van toepassing op: SQL Server 2016 (13.x) en hoger, Azure SQL Database.
CONTROL besturingsserver
EEN SCHEMA WIJZIGEN ALTER besturingsserver
ELKE SERVICE WIJZIGEN ALTER besturingsserver
ELKE SYMMETRISCHE SLEUTEL WIJZIGEN ALTER besturingsserver
WILLEKEURIGE GEBRUIKER WIJZIGEN ALTER besturingsserver
AUTHENTICATE CONTROL VERIFICATIESERVER
BACK-UP DATABASE CONTROL besturingsserver
BACKUPLOG CONTROL besturingsserver
CHECKPOINT CONTROL besturingsserver
CONNECT CONNECTREPLICATIE besturingsserver
CONNECTREPLICATIE CONTROL besturingsserver
CONTROL CONTROL besturingsserver
AGGREGATIE MAKEN ALTER besturingsserver
MAAK ASSEMBLY AAN ELKE ASSEMBLY WIJZIGEN besturingsserver
ASYMMETRISCHE SLEUTEL MAKEN ASYMMETRISCHE SLEUTEL WIJZIGEN besturingsserver
CERTIFICAAT MAKEN ELK CERTIFICAAT WIJZIGEN besturingsserver
CONTRACT MAKEN EEN CONTRACT WIJZIGEN besturingsserver
DATABASE MAKEN CONTROL EEN DATABASE MAKEN
DDL-GEBEURTENISMELDING VOOR DATABASE MAKEN ELKE MELDING VOOR DATABASE-GEBEURTENIS WIJZIGEN DDL-GEBEURTENISMELDING MAKEN
STANDAARD MAKEN ALTER besturingsserver
VOLLEDIGE TEKSTCATALOGUS MAKEN ELKE VOLLEDIGE TEKSTCATALOGUS WIJZIGEN besturingsserver
MAAK FUNCTIE AAN ALTER besturingsserver
BERICHTTYPE MAKEN ELK BERICHTTYPE WIJZIGEN besturingsserver
Aanmaken van procedure ALTER besturingsserver
WACHTRIJ MAKEN ALTER besturingsserver
EXTERNE SERVICEBINDING MAKEN EEN EXTERNE SERVICEBINDING WIJZIGEN besturingsserver
CREËER ROL ELKE ROL WIJZIGEN besturingsserver
Maak route aan ELKE ROUTE WIJZIGEN besturingsserver
REGEL MAKEN ALTER besturingsserver
SCHEMA MAKEN EEN SCHEMA WIJZIGEN besturingsserver
SERVICE CREËREN ELKE SERVICE WIJZIGEN besturingsserver
SYMMETRISCHE SLEUTEL MAKEN ELKE SYMMETRISCHE SLEUTEL WIJZIGEN besturingsserver
SYNONIEM MAKEN ALTER besturingsserver
CREATE TABLE ALTER besturingsserver
TYPE AANMAKEN ALTER besturingsserver
VIEW AANMAKEN ALTER besturingsserver
XML-SCHEMAVERZAMELING MAKEN 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
DATABASEVERBINDING BEËINDIGEN
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
EEN KOLOMVERSLEUTELINGSSLEUTEL WEERGEVEN CONTROL ALLE DEFINITIES BEKIJKEN
EEN HOOFDSLEUTELDEFINITIE WEERGEVEN CONTROL ALLE DEFINITIES BEKIJKEN
STATUS VAN DATABASE BEKIJKEN CONTROL SERVERSTATUS BEKIJKEN
DEFINITIE WEERGEVEN CONTROL ALLE DEFINITIES BEKIJKEN

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. VIEW DEFINITION weigeren met TRAPSGEWIJS

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