Partilhar via


REVOKE Permissões Principal do Banco de Dados (Transact-SQL)

Aplica-se a:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceBase de dados SQL no Microsoft Fabric

Revoga permissões concedidas ou negadas em um usuário de banco de dados, função de banco de dados ou função de aplicativo.

Transact-SQL convenções de sintaxe

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

UTILIZADOR ::database_user
Especifica a classe e o nome do usuário no qual a permissão está sendo revogada. O qualificador de escopo (::) é obrigatório.

PAPEL ::database_role
Especifica a classe e o nome da função na qual a permissão está sendo revogada. O qualificador de escopo (::) é obrigatório.

FUNÇÃO DO APLICATIVO ::application_role
Aplica-se a: SQL Server 2008 (10.0.x) e posterior, Banco de dados SQL

Especifica a classe e o nome da função do aplicativo na qual a permissão está sendo revogada. O qualificador de escopo (::) é obrigatório.

OPÇÃO DE CONCESSÃ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 a entidade de segurança tiver a permissão especificada sem a opção GRANT, 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 OPÇÃO DE CONCESSÃO revogará GRANT e DENY dessa permissão.

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

Permissões de usuário do banco de dados

Um usuário de banco de dados é um protegível no nível de banco de dados contido pelo banco de dados que é seu pai na hierarquia de permissões. As permissões mais específicas e limitadas que podem ser revogadas em um usuário de 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 usuário do banco de dados Implícito pela permissão do usuário do banco de dados Implícito pela permissão do banco de dados
CONTROL CONTROL CONTROL
IMPERSONATE CONTROL CONTROL
ALTER CONTROL ALTERAR TODOS OS UTILIZADORES
VER DEFINIÇÃO CONTROL VER DEFINIÇÃO

Permissões de função de banco de dados

Uma função de banco de dados é uma proteção no nível de banco de dados contida pelo banco de dados que é seu pai na hierarquia de permissões. As permissões mais específicas e limitadas que podem ser revogadas em uma função de 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 função de banco de dados Implícito pela permissão de função de banco de dados Implícito pela permissão do banco de dados
CONTROL CONTROL CONTROL
ASSUMIR A RESPONSABILIDADE CONTROL CONTROL
ALTER CONTROL ALTERAR QUALQUER FUNÇÃO
VER DEFINIÇÃO CONTROL VER DEFINIÇÃO

Permissões de função de aplicativo

Uma função de aplicativo é uma proteção no nível de banco de dados contida pelo banco de dados que é seu pai na hierarquia de permissões. As permissões mais específicas e limitadas que podem ser revogadas em uma função de aplicativo estão listadas na tabela a seguir, juntamente com as permissões mais gerais que as incluem por implicação.

Permissão de função de aplicativo Implícito pela permissão de função do aplicativo Implícito pela permissão do banco de dados
CONTROL CONTROL CONTROL
ALTER CONTROL ALTERAR QUALQUER FUNÇÃO DE APLICATIVO
VER DEFINIÇÃO CONTROL VER DEFINIÇÃO

Permissions

Requer a permissão CONTROL na entidade de segurança especificada ou uma permissão superior que implique a permissão CONTROL.

Os beneficiários da permissão CONTROL em um banco de dados, como membros da função de banco de dados fixa db_owner , podem conceder qualquer permissão em qualquer protegível no banco de dados.

Examples

A. Revogando a permissão CONTROL em um usuário de outro usuário

O exemplo a seguir revoga a CONTROL permissão em AdventureWorks2025 usuário Wanida de usuário RolandX.

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

B. Revogando a permissão VIEW DEFINITION em uma função de um usuário ao qual ela foi concedida COM A OPÇÃO GRANT

O exemplo a seguir revoga a VIEW DEFINITION permissão na AdventureWorks2025 função SammamishParking do usuário JinghaoLiudo banco de dados. A CASCADE opção é especificada porque o usuário JinghaoLiu recebeu VIEW DEFINITION permissão WITH GRANT OPTION.

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

C. Revogando a permissão IMPERSONATE em um usuário de uma função de aplicativo

O exemplo a seguir revoga IMPERSONATE a permissão no usuário HamithaL da função AdventureWorks2025de AccountsPayable17 aplicativo.

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

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

Ver também

Permissões de entidade de banco de dados GRANT (Transact-SQL)
Permissões principais do banco de dados DENY (Transact-SQL)
sys.database_principals (Transact-SQL)
sys.database_permissions (Transact-SQL)
CRIAR USUÁRIO (Transact-SQL)
CRIAR FUNÇÃO DE APLICATIVO (Transact-SQL)
CRIAR FUNÇÃO (Transact-SQL)
SUBVENÇÃO (Transact-SQL)
Permissões (Motor de Base de Dados)
Principais (Motor de Base de Dados)