REVOKE Permissões de Servidor (Transact-SQL)

Aplica-se a:SQL ServerInstância Gerenciada de SQL do Azure

Remove permissões e em nível GRANTDENY de servidor.

Convenções de sintaxe de Transact-SQL

Sintaxe

REVOKE [ GRANT OPTION FOR ] permission  [ ,...n ]   
    { TO | FROM } <grantee_principal> [ ,...n ]  
        [ CASCADE ]  
    [ AS <grantor_principal> ]   
  
<grantee_principal> ::= SQL_Server_login   
        | SQL_Server_login_mapped_to_Windows_login  
    | SQL_Server_login_mapped_to_Windows_group  
    | SQL_Server_login_mapped_to_certificate  
    | SQL_Server_login_mapped_to_asymmetric_key  
    | server_role  
  
<grantor_principal> ::= SQL_Server_login   
    | SQL_Server_login_mapped_to_Windows_login  
    | SQL_Server_login_mapped_to_Windows_group  
    | SQL_Server_login_mapped_to_certificate  
    | SQL_Server_login_mapped_to_asymmetric_key  
    | server_role  

Argumentos

permission
Especifica uma permissão que pode ser concedida em um servidor. Para obter uma lista de permissões, consulte a seção Comentários mais adiante neste tópico.

{ TO | FROM } <grantee_principal> Especifica a entidade da qual a permissão está sendo revogada.

AS <grantor_principal> Especifica a entidade de segurança da qual a entidade de segurança que executa essa consulta obtém seu direito de revogar a permissão.

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

Importante

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

CASCADE
Indica que a permissão que está sendo revogada também é revogada de outros principais aos quais ela foi concedida ou negada por esse principal.

Cuidado

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

SQL_Server_login
Especifica um logon do SQL Server.

SQL_Server_login_mapped_to_Windows_login
Especifica um logon do SQL Server mapeado para um logon do Windows.

SQL_Server_login_mapped_to_Windows_group
Especifica um logon do SQL Server mapeado para um grupo do Windows.

SQL_Server_login_mapped_to_certificate
Especifica um logon do SQL Server mapeado para um certificado do Windows.

SQL_Server_login_mapped_to_asymmetric_key
Especifica um logon do SQL Server mapeado para uma chave assimétrica.

server_role
Especifica uma função de servidor definida pelo usuário.

Comentários

As permissões no escopo de servidor podem ser revogadas somente quando o banco de dados atual é mestre.

REVOKE remove tanto GRANT as permissões quanto DENY as permissões.

Use REVOKEGRANT a OPÇÃO PARA revogar o direito de reconceder a permissão especificada. Se o principal tiver a permissão com o direito de concedê-la, o direito de conceder a permissão será revogado, mas a permissão em si não será. Mas se o principal tiver a permissão especificada sem essa GRANT opção, a permissão será revogada.

As informações sobre permissões do servidor podem ser vistas na exibição do catálogo sys.server_permissions e as informações sobre entidades de segurança do servidor podem ser vistas na exibição do catálogo sys.server_principals. As informações sobre a associação de funções de servidor podem ser vistas na exibição do catálogo sys.server_role_members.

Um servidor é o nível mais alto da hierarquia de permissões. As permissões mais específicas e limitadas que podem ser revogadas em um servidor são listadas na tabela a seguir.

Permissões de servidor Implícito na permissão de servidor
ADMINISTRAR OPERAÇÕES EM MASSA SERVIDOR DE CONTROLE
ALTERAR QUALQUER AVAILABILITY GROUP

Aplica-se a: SQL Server (SQL Server 2012 (11.x) até a versão atual).
SERVIDOR DE CONTROLE
Alterar Qualquer Conexão SERVIDOR DE CONTROLE
ALTERAR QUALQUER CREDENTIAL SERVIDOR DE CONTROLE
ALTERAR QUALQUER DATABASE SERVIDOR DE CONTROLE
ALTERAR QUALQUER ENDPOINT SERVIDOR DE CONTROLE
ALTERAR QUALQUER EVENT NOTIFICATION SERVIDOR DE CONTROLE
ALTERAR QUALQUER EVENT SESSION SERVIDOR DE CONTROLE
ALTERAR QUALQUER SERVIDOR VINCULADO SERVIDOR DE CONTROLE
ALTERAR QUALQUER LOGIN SERVIDOR DE CONTROLE
ALTERAR QUALQUER SERVER AUDIT SERVIDOR DE CONTROLE
ALTERAR QUALQUER SERVER ROLE

Aplica-se a: SQL Server (SQL Server 2012 (11.x) até a versão atual).
SERVIDOR DE CONTROLE
ALTERAR RECURSOS SERVIDOR DE CONTROLE
ALTERAR ESTADO DO SERVIDOR SERVIDOR DE CONTROLE
ALTERAR CONFIGURAÇÕES SERVIDOR DE CONTROLE
ALTER TRACE SERVIDOR DE CONTROLE
AUTENTICAR SERVIDOR SERVIDOR DE CONTROLE
CONECTAR QUALQUER DATABASE

Aplica-se a: SQL Server (SQL Server 2014 (12.x) até a versão atual).
SERVIDOR DE CONTROLE
CONECTAR SQL SERVIDOR DE CONTROLE
SERVIDOR DE CONTROLE SERVIDOR DE CONTROLE
CRIAR QUALQUER DATABASE ALTERAR QUALQUER DATABASE
CREATE AVAILABILITY GROUP

Aplica-se a: SQL Server (SQL Server 2012 (11.x) até a versão atual).
ALTERAR QUALQUER AVAILABILITY GROUP
CRIAR DDL EVENT NOTIFICATION ALTERAR QUALQUER EVENT NOTIFICATION
CREATE ENDPOINT ALTERAR QUALQUER ENDPOINT
CREATE SERVER ROLE

Aplica-se a: SQL Server (SQL Server 2012 (11.x) até a versão atual).
ALTERAR QUALQUER SERVER ROLE
CRIAR RASTREAMENTO EVENT NOTIFICATION ALTERAR QUALQUER EVENT NOTIFICATION
ACESSO EXTERNO ASSEMBLY SERVIDOR DE CONTROLE
REPRESENTAR QUALQUER LOGIN

Aplica-se a: SQL Server (SQL Server 2014 (12.x) até a versão atual).
SERVIDOR DE CONTROLE
SELECIONAR TODOS OS USER PROTEGÍVEIS

Aplica-se a: SQL Server (SQL Server 2014 (12.x) até a versão atual).
SERVIDOR DE CONTROLE
SHUTDOWN SERVIDOR DE CONTROLE
INSEGURO ASSEMBLY SERVIDOR DE CONTROLE
VIEW QUALQUER DATABASE VIEW QUALQUER DEFINIÇÃO
VIEW QUALQUER DEFINIÇÃO SERVIDOR DE CONTROLE
VIEW ESTADO DO SERVIDOR ALTERAR ESTADO DO SERVIDOR

Permissões

Requer a permissão CONTROL SERVER ou associação na função de servidor fixa sysadmin.

Exemplos

a. Revogando uma permissão de um logon

O exemplo a seguir revoga a permissão VIEW SERVER STATE de logon do SQL Server WanidaBenshoof.

USE master;  
REVOKE VIEW SERVER STATE FROM WanidaBenshoof;  
GO  

B. Revogando a opção WITH GRANT

O exemplo a seguir revoga o direito de conceder CONNECT SQL do logon do SQL Server JanethEsteves.

USE master;  
REVOKE GRANT OPTION FOR CONNECT SQL FROM JanethEsteves;  
GO  

O logon ainda tem a permissão CONNECT SQL, mas já não pode concedê-la a outros principais.

Consulte Também

GRANT (Transact-SQL)
DENY (Transact-SQL)
DENY Permissões de servidor (Transact-SQL)
REVOKE Permissões de servidor (Transact-SQL)
Hierarquia de permissões (Mecanismo de Banco de Dados)
sys.fn_builtin_permissions (Transact-SQL)
sys.fn_my_permissions (Transact-SQL)
HAS_PERMS_BY_NAME (Transact-SQL)