Delen via


Machtigingen voor database-principal intrekken (Transact-SQL)

Van toepassing op:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceSQL-database in Microsoft Fabric Preview

Hiermee worden machtigingen ingetrokken die zijn verleend of geweigerd voor een databasegebruiker, databaserol of toepassingsrol.

Transact-SQL syntaxis-conventies

Syntax

REVOKE [ GRANT OPTION FOR ] permission [ ,...n ]    
    ON   
    {  [ USER :: database_user ]  
       | [ ROLE :: database_role ]  
       | [ APPLICATION ROLE :: application_role ]  
    }  
    { FROM | TO } <database_principal> [ ,...n ]  
        [ CASCADE ]  
    [ AS <database_principal> ]  
  
<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 ingetrokken voor de database-principal. Zie de sectie Opmerkingen verderop in dit onderwerp voor een lijst met machtigingen.

USER ::database_user
Hiermee geeft u de klasse en naam op van de gebruiker waarop de machtiging wordt ingetrokken. De kwalificatie voor het bereik (::) is vereist.

ROLE ::database_role
Hiermee geeft u de klasse en naam van de rol waarvoor de machtiging wordt ingetrokken. De kwalificatie voor het bereik (::) is vereist.

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

Hiermee geeft u de klasse en naam op van de toepassingsrol waarvoor de machtiging wordt ingetrokken. De kwalificatie voor het bereik (::) is vereist.

GRANT OPTION
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 principal de opgegeven machtiging heeft zonder de optie GRANT, wordt de machtiging 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 trapsgewijs intrekken van een machtiging die MET GRANT OPTION wordt verleend, trekt zowel GRANT als DENY van die machtiging in.

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

Machtigingen voor databasegebruikers

Een databasegebruiker is een beveiligbaar databaseniveau dat is opgenomen in de database die bovenliggend is in de machtigingshiërarchie. De meest specifieke en beperkte machtigingen die voor een databasegebruiker kunnen worden ingetrokken, worden vermeld in de volgende tabel, samen met de meer algemene machtigingen die deze door implicatie bevatten.

Machtiging voor databasegebruiker Impliciet door databasegebruikersmachtiging Impliciet door databasemachtiging
CONTROL CONTROL CONTROL
IMPERSONATE CONTROL CONTROL
ALTER CONTROL WILLEKEURIGE GEBRUIKER WIJZIGEN
VIEW DEFINITION CONTROL VIEW DEFINITION

Machtigingen voor databaserollen

Een databaserol is een beveiligbaar databaseniveau dat is opgenomen in de database die bovenliggend is in de machtigingshiërarchie. De meest specifieke en beperkte machtigingen die kunnen worden ingetrokken voor een databaserol, worden weergegeven in de volgende tabel, samen met de meer algemene machtigingen die ze bevatten door implicatie.

Machtiging voor databaserol Impliciet door machtiging voor databaserol Impliciet door databasemachtiging
CONTROL CONTROL CONTROL
TAKE OWNERSHIP CONTROL CONTROL
ALTER CONTROL ELKE ROL WIJZIGEN
VIEW DEFINITION CONTROL VIEW DEFINITION

Machtigingen voor toepassingsrol

Een toepassingsrol is een beveiligbaar databaseniveau dat is opgenomen in de database die bovenliggend is in de machtigingshiërarchie. De meest specifieke en beperkte machtigingen die kunnen worden ingetrokken voor een toepassingsrol, worden vermeld in de volgende tabel, samen met de meer algemene machtigingen die ze bevatten door implicatie.

Machtiging voor toepassingsrol Impliciet door machtiging voor toepassingsrol Impliciet door databasemachtiging
CONTROL CONTROL CONTROL
ALTER CONTROL ELKE TOEPASSINGSROL WIJZIGEN
VIEW DEFINITION CONTROL VIEW DEFINITION

Permissions

Vereist control-machtiging voor de opgegeven principal of een hogere machtiging die CONTROL-machtiging impliceert.

Grantees van control-machtigingen voor een database, zoals leden van de db_owner vaste databaserol, kunnen elke machtiging verlenen voor elke beveiligbare database in de database.

Examples

A. Control-machtiging intrekken voor een gebruiker van een andere gebruiker

In het volgende voorbeeld wordt CONTROL de machtiging voor AdventureWorks2022 de gebruiker Wanida van de gebruiker RolandXingetrokken.

USE AdventureWorks2022;  
REVOKE CONTROL ON USER::Wanida FROM RolandX;  
GO  

B. DE MACHTIGING VIEW DEFINITION intrekken voor een rol van een gebruiker waaraan deze IS VERLEEND MET GRANT OPTION

In het volgende voorbeeld wordt VIEW DEFINITION de machtiging voor AdventureWorks2022 de rol SammamishParking van databasegebruiker JinghaoLiuingetrokken. De CASCADE optie is opgegeven omdat de gebruiker JinghaoLiu toestemming WITH GRANT OPTIONheeft gekregenVIEW DEFINITION.

USE AdventureWorks2022;  
REVOKE VIEW DEFINITION ON ROLE::SammamishParking   
    FROM JinghaoLiu CASCADE;  
GO  

C. IMITATIE-machtiging intrekken voor een gebruiker vanuit een toepassingsrol

In het volgende voorbeeld wordt de machtiging voor de gebruiker HamithaL uit AdventureWorks2022 de toepassingsrol IMPERSONATEAccountsPayable17ingetrokken.

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

USE AdventureWorks2022;  
REVOKE IMPERSONATE ON USER::HamithaL FROM AccountsPayable17;  
GO    

See Also

database-principalmachtigingen verlenen (Transact-SQL)
Machtigingen voor database-principal weigeren (Transact-SQL)
sys.database_principals (Transact-SQL)
sys.database_permissions (Transact-SQL)
GEBRUIKER AANMAKEN (Transact-SQL)
TOEPASSINGSROL MAKEN (Transact-SQL)
ROL AANMAKEN (Transact-SQL)
GRANT (Transact-SQL)
Machtigingen (Database Engine)
Principals (Databasemotor)