Compartilhar via


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

Nega permissões em um grupo de disponibilidade AlwaysOn no SQL Server.

Aplica-se a: SQL Server (SQL Server 2012 à versão atual).

Ícone de vínculo de tópico Convenções da sintaxe Transact-SQL

Sintaxe

DENY permission  [ ,...n ] ON AVAILABILITY GROUP :: availability_group_name
        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 negada 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 negada. O qualificador de escopo (
    ::
    ) é obrigatório.

  • TO <server_principal>
    Especifica o logon do SQL Server ao qual a permissão está sendo negada.

  • 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.

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

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

Comentários

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

As informações sobre grupos de disponibilidade estão visíveis na exibição de catálogo sys.availability_groups (Transact-SQL). As informações sobre permissões de servidor são visíveis na exibição do catálogo sys.server_permissions e as informações sobre entidades de segurança do servidor sã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 negadas 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

CONNECT

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.Negando a permissão VIEW DEFINITION em um grupo de disponibilidade

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

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

B.Negando a permissão TAKE OWNERSHIP com CASCADE OPTION

O exemplo a seguir nega a permissão TAKE OWNERSHIP no grupo de disponibilidade MyAg para o usuário do SQL Server PKomosinski com a opção CASCADE.

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

Consulte também

Referência

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

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

CREATE AVAILABILITY GROUP (Transact-SQL)

sys.availability_groups (Transact-SQL)

Conceitos

Permissões (Mecanismo de Banco de Dados)

Entidades (Mecanismo de Banco de Dados)

Outros recursos

Exibições de grupos de disponibilidade AlwaysOn (Transact-SQL)