REVOKE Permissões de Base de Dados (Transact-SQL)

Aplica-se a:SQL ServerBase de Dados SQL do AzureInstância Gerida do Azure SQLAzure Synapse AnalyticsSistema de Plataforma de Análise (PDW)Ponto de Extremidade de Análise SQL no Microsoft FabricArmazém no Microsoft FabricBase de Dados SQL no Microsoft Fabric

Revoga permissões concedidas e negadas em um banco de dados.

Transact-SQL convenções de sintaxe

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
Especifica uma permissão que pode ser negada em um banco de dados. Para obter uma lista das permissões, consulte a seção Comentários mais adiante neste tópico.

ALL
Esta opção não revoga todas as permissões possíveis. Revogar TODOS é equivalente a revogar as seguintes permissões: BACKUP, LOG, CREATE DATABASE, CREATE DEFAULT, CREATE FUNCTION, CREATE PROCEDURE, CREATE RULE, , CREATE TABLE, , e CREATE VIEW. BACKUPDATABASE

PRIVILEGES
Incluído para conformidade ISO. Não altera o comportamento da ALL.

GRANT OPÇÃO
Indica que o direito de conceder a permissão especificada a outras entidades será revogado. A permissão em si não será revogada.

Important

Se o principal tiver a permissão especificada sem essa GRANT opção, a própria permissão será revogada.

CASCADE
Indica que a permissão que está sendo revogada também é revogada de outras entidades às quais foi concedida ou negada por essa entidade de segurança.

Caution

Uma revogação em cascata de uma permissão concedida COM GRANT OPÇÃO revogará tanto GRANT essa permissão DENY .

AS <database_principal> Especifica uma entidade da qual a entidade que executa esta consulta deriva seu direito de revogar a permissão.

Database_user
Especifica um usuário de banco de dados.

Database_role
Especifica uma função de banco de dados.

Application_role
Aplica-se a: SQL Server 2008 (10.0.x) e posterior, Banco de dados SQL

Especifica uma função de aplicativo.

Database_user_mapped_to_Windows_User
Aplica-se a: SQL Server 2008 (10.0.x) e posterior

Especifica um usuário de banco de dados mapeado para um usuário do Windows.

Database_user_mapped_to_Windows_Group
Aplica-se a: SQL Server 2008 (10.0.x) e posterior

Especifica um usuário de banco de dados mapeado para um grupo do Windows.

Database_user_mapped_to_certificate
Aplica-se a: SQL Server 2008 (10.0.x) e posterior

Especifica um usuário de banco de dados mapeado para um certificado.

Database_user_mapped_to_asymmetric_key
Aplica-se a: SQL Server 2008 (10.0.x) e posterior

Especifica um usuário de banco de dados mapeado para uma chave assimétrica.

Database_user_with_no_login
Especifica um usuário de banco de dados sem entidade de segurança correspondente no nível do servidor.

Remarks

A declaração falhará se o CASCADE não for especificado quando estiver a revogar uma permissão a um principal que recebeu essa permissão com a GRANT OPÇÃO especificada.

Um banco de dados é um protegível contido pelo servidor que é seu pai na hierarquia de permissões. As permissões mais específicas e limitadas que podem ser revogadas em um banco de dados estão listadas na tabela a seguir, juntamente com as permissões mais gerais que as incluem por implicação.

Permissão de base de dados Implícito pela permissão do banco de dados Implícito pela permissão do servidor
ADMINISTRAÇÃO DATABASE DE OPERAÇÕES A GRANEL
Aplica-se a: Banco de dados SQL.
CONTROL SERVIDOR DE CONTROLO
ALTER CONTROL ALTER QUALQUER DATABASE
ALTER QUALQUER APPLICATION ROLE ALTER SERVIDOR DE CONTROLO
ALTER QUALQUER ASSEMBLY ALTER SERVIDOR DE CONTROLO
ALTER QUALQUER ASYMMETRIC KEY ALTER SERVIDOR DE CONTROLO
ALTER QUALQUER CERTIFICATE ALTER SERVIDOR DE CONTROLO
ALTER QUALQUER COLUMN ENCRYPTION KEY ALTER SERVIDOR DE CONTROLO
ALTERAR QUALQUER COLUMN MASTER KEY DEFINIÇÃO ALTER SERVIDOR DE CONTROLO
ALTER QUALQUER CONTRACT ALTER SERVIDOR DE CONTROLO
ALTERAR QUALQUER DATABASE AUDITORIA ALTER ALTER QUALQUER SERVER AUDIT
ALTERAR QUALQUER DATABASE DDL TRIGGER ALTER SERVIDOR DE CONTROLO
ALTERAR QUALQUER DATABASEEVENT NOTIFICATION ALTER ALTER QUALQUER EVENT NOTIFICATION
ALTERAR QUALQUER DATABASEEVENT SESSION
Aplica-se a: Banco de Dados SQL do Azure.
ALTER ALTER QUALQUER EVENT SESSION
ALTER QUALQUER DATABASE SCOPED CONFIGURATION
Aplica-se a: SQL Server 2016 (13.x) e posterior, Banco de dados SQL.
CONTROL SERVIDOR DE CONTROLO
ALTERAR QUALQUER ESPAÇO DE DADOS ALTER SERVIDOR DE CONTROLO
ALTER QUALQUER EXTERNAL DATA SOURCE ALTER SERVIDOR DE CONTROLO
ALTER QUALQUER EXTERNAL FILE FORMAT ALTER SERVIDOR DE CONTROLO
ALTER QUALQUER EXTERNAL LIBRARY
Aplica-se a: SQL Server 2017 (14.x).
CONTROL SERVIDOR DE CONTROLO
ALTER QUALQUER FULLTEXT CATALOG ALTER SERVIDOR DE CONTROLO
ALTERE QUALQUER MÁSCARA CONTROL SERVIDOR DE CONTROLO
ALTER QUALQUER MESSAGE TYPE ALTER SERVIDOR DE CONTROLO
ALTER QUALQUER REMOTE SERVICE BINDING ALTER SERVIDOR DE CONTROLO
ALTER QUALQUER ROLE ALTER SERVIDOR DE CONTROLO
ALTER QUALQUER ROUTE ALTER SERVIDOR DE CONTROLO
ALTER QUALQUER SCHEMA ALTER SERVIDOR DE CONTROLO
ALTER QUALQUER SECURITY POLICY
Aplica-se a: Banco de Dados SQL do Azure.
CONTROL SERVIDOR DE CONTROLO
ALTER QUALQUER SERVICE ALTER SERVIDOR DE CONTROLO
ALTER QUALQUER SYMMETRIC KEY ALTER SERVIDOR DE CONTROLO
ALTER QUALQUER USER ALTER SERVIDOR DE CONTROLO
AUTHENTICATE CONTROL AUTENTICAR SERVIDOR
BACKUP DATABASE CONTROL SERVIDOR DE CONTROLO
BACKUP LOG CONTROL SERVIDOR DE CONTROLO
CHECKPOINT CONTROL SERVIDOR DE CONTROLO
CONNECT REPLICAÇÃO CONNECT SERVIDOR DE CONTROLO
REPLICAÇÃO CONNECT CONTROL SERVIDOR DE CONTROLO
CONTROL CONTROL SERVIDOR DE CONTROLO
CREATE AGGREGATE ALTER SERVIDOR DE CONTROLO
CREATE ASSEMBLY ALTER QUALQUER ASSEMBLY SERVIDOR DE CONTROLO
CREATE ASYMMETRIC KEY ALTER QUALQUER ASYMMETRIC KEY SERVIDOR DE CONTROLO
CREATE CERTIFICATE ALTER QUALQUER CERTIFICATE SERVIDOR DE CONTROLO
CREATE CONTRACT ALTER QUALQUER CONTRACT SERVIDOR DE CONTROLO
CREATE DATABASE CONTROL CRIAR QUALQUER DATABASE
CREATE DATABASE DDL EVENT NOTIFICATION ALTERAR QUALQUER DATABASEEVENT NOTIFICATION CRIAR DDL EVENT NOTIFICATION
CREATE DEFAULT ALTER SERVIDOR DE CONTROLO
CREATE FULLTEXT CATALOG ALTER QUALQUER FULLTEXT CATALOG SERVIDOR DE CONTROLO
CREATE FUNCTION ALTER SERVIDOR DE CONTROLO
CREATE MESSAGE TYPE ALTER QUALQUER MESSAGE TYPE SERVIDOR DE CONTROLO
CREATE PROCEDURE ALTER SERVIDOR DE CONTROLO
CREATE QUEUE ALTER SERVIDOR DE CONTROLO
CREATE REMOTE SERVICE BINDING ALTER QUALQUER REMOTE SERVICE BINDING SERVIDOR DE CONTROLO
CREATE ROLE ALTER QUALQUER ROLE SERVIDOR DE CONTROLO
CREATE ROUTE ALTER QUALQUER ROUTE SERVIDOR DE CONTROLO
CREATE RULE ALTER SERVIDOR DE CONTROLO
CREATE SCHEMA ALTER QUALQUER SCHEMA SERVIDOR DE CONTROLO
CREATE SERVICE ALTER QUALQUER SERVICE SERVIDOR DE CONTROLO
CREATE SYMMETRIC KEY ALTER QUALQUER SYMMETRIC KEY SERVIDOR DE CONTROLO
CREATE SYNONYM ALTER SERVIDOR DE CONTROLO
CREATE TABLE ALTER SERVIDOR DE CONTROLO
CREATE TYPE ALTER SERVIDOR DE CONTROLO
CREATE VIEW ALTER SERVIDOR DE CONTROLO
CREATE XML SCHEMA COLLECTION ALTER SERVIDOR DE CONTROLO
DELETE CONTROL SERVIDOR DE CONTROLO
EXECUTE CONTROL SERVIDOR DE CONTROLO
EXECUTE QUALQUER SCRIPT EXTERNO
Aplica-se a: SQL Server 2016 (13.x).
CONTROL SERVIDOR DE CONTROLO
INSERT CONTROL SERVIDOR DE CONTROLO
KILL DATABASE CONNECTION
Aplica-se a: Banco de Dados SQL do Azure.
CONTROL ALTERAR QUALQUER LIGAÇÃO
REFERENCES CONTROL SERVIDOR DE CONTROLO
SELECT CONTROL SERVIDOR DE CONTROLO
SHOWPLAN CONTROL ALTERAR RASTREAMENTO
SUBSCREVER NOTIFICAÇÕES DE CONSULTA CONTROL SERVIDOR DE CONTROLO
ASSUMIR A RESPONSABILIDADE CONTROL SERVIDOR DE CONTROLO
UNMASK CONTROL SERVIDOR DE CONTROLO
UPDATE CONTROL SERVIDOR DE CONTROLO
VIEW QUALQUER COLUMN ENCRYPTION KEY DEFINIÇÃO CONTROL VIEW QUALQUER DEFINIÇÃO
VIEW QUALQUER COLUMN MASTER KEY DEFINIÇÃO CONTROL VIEW QUALQUER DEFINIÇÃO
VIEW DATABASE ESTADO CONTROL VIEW ESTADO DO SERVIDOR
VIEW DEFINIÇÃO CONTROL VIEW QUALQUER DEFINIÇÃO

Permissions

A entidade de segurança que executa essa instrução (ou a entidade de segurança especificada com a opção AS) deve ter permissão CONTROL no banco de dados ou uma permissão superior que implique permissão CONTROL no banco de dados.

Se você estiver usando a opção AS, a entidade de segurança especificada deverá ser proprietária do banco de dados.

Examples

A. Revogando permissão para criar certificados

O exemplo a seguir revoga CREATE CERTIFICATE a AdventureWorks2025 permissão no banco de dados do usuário MelanieK.

Aplica-se a: SQL Server 2008 (10.0.x) e posterior

USE AdventureWorks2022;  
REVOKE CREATE CERTIFICATE FROM MelanieK;  
GO  

B. Revogando a permissão REFERENCES de uma função de aplicativo

O exemplo a seguir revoga REFERENCES a AdventureWorks2025 permissão no banco de dados da função AuditMonitorde aplicativo.

Aplica-se a: SQL Server 2008 (10.0.x) e posterior, Banco de dados SQL

USE AdventureWorks2022;  
REVOKE REFERENCES FROM AuditMonitor;  
GO  

C. Revogação VIEW de DEFINIÇÃO com CASCADE

O exemplo a seguir revoga VIEW DEFINITION a AdventureWorks2025 permissão no banco de dados do usuário CarmineEs e de todas as entidades às quais CarmineEs concedeu VIEW DEFINITION permissão.

USE AdventureWorks2022;  
REVOKE VIEW DEFINITION FROM CarmineEs CASCADE;  
GO  

Ver também

sys.database_permissions (Transact-SQL)
sys.database_principals (Transact-SQL)
GRANT Permissões de Base de Dados (Transact-SQL)
DENY Permissões de Base de Dados (Transact-SQL)
Permissões (Motor de Base de Dados)
Principais (Motor de Base de Dados)