REVOKE 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

Hiermee worden machtigingen ingetrokken die zijn verleend en geweigerd voor een database.

Transact-SQL syntaxis-conventies

Syntax

REVOKE [ GRANT OPTION FOR ] <permission> [ ,...n ]    
    { TO | FROM } <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

permission
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.

ALL
Met deze optie worden niet alle mogelijke machtigingen ingetrokken. Het intrekken van ALL is gelijk aan het intrekken van de volgende permissies: BACKUP, LOG, CREATE DATABASE, CREATE DEFAULT, CREATE FUNCTION, , CREATE RULECREATE PROCEDURE, CREATE TABLEen CREATE VIEW. BACKUPDATABASE

PRIVILEGES
Opgenomen voor ISO-naleving. Het gedrag van ALL wordt niet gewijzigd.

GRANT OPTIE
Geeft aan dat het recht om de opgegeven machtiging aan andere principals te verlenen, wordt ingetrokken. De machtiging zelf wordt niet ingetrokken.

Important

Als de opdrachtgever de gespecificeerde toestemming heeft zonder die GRANT optie, wordt de toestemming zelf ingetrokken.

CASCADE
Geeft aan dat de ingetrokken machtiging ook wordt ingetrokken van andere principals waaraan deze is verleend of geweigerd door deze principal.

Caution

Een cascaderende intrekking van een toestemming die MET GRANT OPTIE is gegeven, zal beide GRANT en DENY van die toestemming intrekken.

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

Database_user
Hiermee geeft u een databasegebruiker.

Database_role
Hiermee geeft u een databaserol op.

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

Hiermee geeft u een toepassingsrol op.

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

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

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

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

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

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

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

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

De verklaring zal falen als CASCADE niet is gespecificeerd wanneer je een toestemming intrekt aan een opdrachtgever die die toestemming met de GRANT gespecificeerde OPTIE heeft gekregen.

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 in een database kunnen worden ingetrokken, 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
is 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 SCHEMA ALTER besturingsserver
WIJZIG EEN SECURITY POLICY
is van toepassing op: Azure SQL Database.
CONTROL 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
is 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 DEFINITIE CONTROL VIEW ELKE DEFINITIE
VIEW ELKE COLUMN 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 intrekken om certificaten te maken

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

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

USE AdventureWorks2022;  
REVOKE CREATE CERTIFICATE FROM MelanieK;  
GO  

B. VERWIJZINGEN-machtiging intrekken van een toepassingsrol

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

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

USE AdventureWorks2022;  
REVOKE REFERENCES FROM AuditMonitor;  
GO  

C. DEFINITIE intrekken VIEW met CASCADE

In het volgende voorbeeld wordt VIEW DEFINITION de machtiging voor de database van de AdventureWorks2025 gebruiker CarmineEs en van alle principals waarvoor CarmineEs toestemming is verleend VIEW DEFINITION , ingetrokken.

USE AdventureWorks2022;  
REVOKE VIEW DEFINITION FROM CarmineEs CASCADE;  
GO  

Zie ook

sys.database_permissions (Transact-SQL)
sys.database_principals (Transact-SQL)
GRANT Databaserechten (Transact-SQL)
DENY Databaserechten (Transact-SQL)
Machtigingen (Database Engine)
Principals (Databasemotor)