Permissões de servidor DENY (Transact-SQL)

Nega permissões em um servidor.

Ícone de vínculo de tópicoConvenções de sintaxe Transact-SQL

Sintaxe

DENY permission [ ,...n ] 
    TO <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

<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

Argumentos

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

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

  • TO <server_principal>
    Especifica o principal ao qual a permissão é negada.

  • AS <grantor_principal>
    Especifica o principal do qual o principal que executa esta consulta deriva seu direito de negar a 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.

Comentários

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

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 principais de servidor são visíveis na exibição do catálogo sys.server_principals. As informações sobre a associação de funções de servidor podem são visíveis 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 negadas em um servidor são listadas na tabela a seguir.

Permissões de servidor

Implícito na permissão de servidor

ADMINISTER BULK OPERATIONS

CONTROL SERVER

ALTER ANY CONNECTION

CONTROL SERVER

ALTER ANY CREDENTIAL

CONTROL SERVER

ALTER ANY DATABASE

CONTROL SERVER

ALTER ANY ENDPOINT

CONTROL SERVER

ALTER ANY EVENT NOTIFICATION

CONTROL SERVER

ALTER ANY LINKED SERVER

CONTROL SERVER

ALTER ANY LOGIN

CONTROL SERVER

ALTER ANY SERVER AUDIT

CONTROL SERVER

ALTER RESOURCES

CONTROL SERVER

ALTER SERVER STATE

CONTROL SERVER

ALTER SETTINGS

CONTROL SERVER

ALTER TRACE

CONTROL SERVER

AUTHENTICATE SERVER

CONTROL SERVER

CONNECT SQL

CONTROL SERVER

CONTROL SERVER

CONTROL SERVER

CREATE ANY DATABASE

ALTER ANY DATABASE

CREATE DDL EVENT NOTIFICATION

ALTER ANY EVENT NOTIFICATION

CREATE ENDPOINT

ALTER ANY ENDPOINT

CREATE TRACE EVENT NOTIFICATION

ALTER ANY EVENT NOTIFICATION

EXTERNAL ACCESS ASSEMBLY

CONTROL SERVER

SHUTDOWN

CONTROL SERVER

UNSAFE ASSEMBLY

CONTROL SERVER

VIEW ANY DATABASE

VIEW ANY DEFINITION

VIEW ANY DEFINITION

CONTROL SERVER

VIEW SERVER STATE

ALTER SERVER STATE

Permissões

Requer a permissão CONTROL SERVER ou a propriedade do protegível. Se a cláusula AS for usada, o principal especificado deverá ser proprietário do protegível no qual as permissões estão sendo negadas.

Exemplos

A. Negando a permissão CONNECT SQL para um logon do SQL Server e principais aos quais o logon a concederam novamente

O exemplo a seguir nega a permissão CONNECT SQL para o logon de Annika no SQL Server e para os principais aos quais ela concedeu a permissão.

USE master;
DENY CONNECT SQL TO Annika CASCADE;
GO

B. Negando a permissão CREATE ENDPOINT para um logon do SQL Server usando a opção de AS

O exemplo a seguir nega a permissão CREATE ENDPOINT ao usuário ArifS. O exemplo usa a opção AS para especificar MandarP como o principal do qual o principal em execução deriva a autoridade para tanto.

USE master;
DENY CREATE ENDPOINT TO ArifS AS MandarP;
GO