Permissões de grupo de disponibilidade REVOKE (Transact-SQL)

Aplica-se a: SQL Server Banco de Dados SQL do Azure Instância Gerenciada de SQL do Azure

Revoga permissões em um Grupo de Disponibilidade AlwaysOn.

Convenções de sintaxe de Transact-SQL

Sintaxe

REVOKE [ GRANT OPTION FOR ] permission  [ ,...n ]   
    ON AVAILABILITY GROUP :: availability_group_name  
    { FROM | TO } < server_principal >  [ ,...n ]  
    [ CASCADE ]  
    [ AS SQL_Server_login ]   
  
<server_principal> ::=   
        SQL_Server_login  
    | SQL_Server_login_from_Windows_login   
    | SQL_Server_login_from_certificate   
    | SQL_Server_login_from_AsymKey  

Argumentos

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

ON AVAILABILITY GROUP ::availability_group_name
Especifica o grupo de disponibilidade no qual a permissão está sendo revogada. O qualificador de escopo ( :: ) é obrigatório.

{ FROM | TO } <server_principal> Especifica o logon do SQL Server para o qual a permissão está sendo revogada.

SQL_Server_login
Especifica o nome de um logon do SQL Server.

SQL_Server_login_from_Windows_login
Especifica o nome de um logon do SQL Server criado a partir de um logon do Windows.

SQL_Server_login_from_certificate
Especifica o nome de um logon do SQL Server mapeado para um certificado.

SQL_Server_login_from_AsymKey
Especifica o nome de um logon do SQL Server mapeado para uma chave assimétrica.

GRANT OPTION
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 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 outros principais aos quais ela foi concedida ou negada por esse principal.

Importante

A revogação em cascata de uma permissão WITH GRANT OPTION concedida revogará as opções GRANT e DENY dessa permissão.

AS SQL_Server_login
Especifica o logon do SQL Server a partir do qual o principal que executa esta consulta deriva seu direito de revogar a permissão.

Comentários

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

Informações sobre grupos de disponibilidade ficam visíveis na exibição do catálogo sys.availability_groups (Transact-SQL). As informações sobre permissões de servidor estão visíveis na exibição do catálogo sys.server_permissions e as informações sobre entidades de segurança do servidor estão visíveis na exibição do catálogo sys.server_principals.

Um grupo de disponibilidade é um nível de servidor protegível. As permissões mais específicas e limitadas que podem ser revogadas em um grupo de disponibilidade são listadas na tabela a seguir, junto com as permissões mais gerais que as incluem implicitamente.

Permissão de grupo de disponibilidade Implícito na permissão de grupo de disponibilidade Implícito na permissão de servidor
ALTER CONTROL ALTER ANY AVAILABILITY GROUP
CONECTAR CONTROL CONTROL SERVER
CONTROL CONTROL CONTROL SERVER
TAKE OWNERSHIP CONTROL CONTROL SERVER
VIEW DEFINITION CONTROL VIEW ANY DEFINITION

Permissões

Requer a permissão CONTROL no grupo de disponibilidade ou a permissão ALTER ANY AVAILABILITY GROUP no servidor.

Exemplos

a. Revogando a permissão VIEW DEFINITION em um grupo de disponibilidade

O exemplo a seguir revoga a permissão VIEW DEFINITION no grupo de disponibilidade MyAg para o logon do SQL Server ZArifin.

USE master;  
REVOKE VIEW DEFINITION ON AVAILABILITY GROUP::MyAg TO ZArifin;  
GO  

B. Revogando a permissão TAKE OWNERSHIP com CASCADE

O exemplo a seguir revoga a permissão TAKE OWNERSHIP no grupo de disponibilidade MyAg para PKomosinski usuário do SQL Server e de todas as entidades de segurança às quais o PKomosinski concedeu TAKE OWNERSHIP em MyAg.

USE master;  
REVOKE TAKE OWNERSHIP ON AVAILABILITY GROUP::MyAg TO PKomosinski   
    CASCADE;  
GO  

C. Revogando uma cláusula WITH GRANT OPTION previamente concedida

Se uma permissão foi concedida usando WITH GRANT OPTION, use REVOKE GRANT OPTION FOR… para remover WITH GRANT OPTION. O exemplo a seguir concede a permissão e remove a parte de WITH GRANT da permissão.

USE master;  
GRANT CONTROL ON AVAILABILITY GROUP::MyAg TO PKomosinski   
    WITH GRANT OPTION;  
GO  
REVOKE GRANT OPTION FOR CONTROL ON AVAILABILITY GROUP::MyAg TO PKomosinski  
CASCADE  
GO  

Consulte Também

Permissões de grupo de disponibilidade GRANT (Transact-SQL)
Permissões de grupo de disponibilidade DENY (Transact-SQL)
CREATE AVAILABILITY GROUP (Transact-SQL)
sys.availability_groups (Transact-SQL)
Exibições de catálogo de Grupos de Disponibilidade AlwaysOn (Transact-SQL)
Permissões (Mecanismo de Banco de Dados)
Entidades (Mecanismo de Banco de Dados)