Permissões de esquema DENY (Transact-SQL)

Aplica-se a:SQL ServerBanco de Dados SQL do AzureInstância Gerenciada de SQL do Azure

Nega permissões em um esquema.

Convenções de sintaxe de Transact-SQL

Sintaxe

DENY permission  [ ,...n ] } ON SCHEMA :: schema_name  
    TO database_principal [ ,...n ]   
    [ CASCADE ]  
        [ AS denying_principal ]  

Observação

Para exibir a sintaxe do Transact-SQL para o SQL Server 2014 (12.x) e versões anteriores, confira a Documentação das versões anteriores.

Argumentos

permission
Especifica uma permissão que pode negada em um esquema. Para obter uma lista dessas permissões, consulte a seção Comentários mais adiante neste artigo.

ON SCHEMA :: schema*_name*
Especifica o esquema no qual a permissão está sendo negada. O qualificador de escopo :: é obrigatório.

database_principal
Especifica o principal ao qual a permissão é negada. database_principal pode ser uma destas entidades de segurança:

  • Usuário de banco de dados
  • Função de banco de dados
  • Função de aplicativo
  • Usuário de banco de dados mapeado para um logon do Windows
  • Usuário de banco de dados mapeado para um grupo do Windows
  • Usuário de banco de dados mapeado para um certificado
  • Usuário de banco de dados mapeado para uma chave assimétrica
  • Usuário do banco de dados não mapeado para um principal de servidor.

CASCADE
Nega a permissão a quaisquer outras entidades de segurança às quais a database_principal especificada concedeu permissão.

denying_principal
Especifica uma entidade de segurança da qual a entidade de segurança que executa essa consulta deriva seu direito de negar a permissão. denying_principal pode ser uma destas entidades de segurança:

  • Usuário de banco de dados
  • Função de banco de dados
  • Função de aplicativo
  • Usuário de banco de dados mapeado para um logon do Windows
  • Usuário de banco de dados mapeado para um grupo do Windows
  • Usuário de banco de dados mapeado para um certificado
  • Usuário de banco de dados mapeado para uma chave assimétrica
  • Usuário do banco de dados não mapeado para um principal de servidor.

Comentários

Um esquema é um protegível em nível de banco de dados. Ele é contido no banco de dados pai da hierarquia de permissões. As permissões mais específicas e limitadas que podem ser negadas em um esquema são listadas na tabela a seguir. A tabela mostra as permissões mais gerais que as contêm implicitamente.

Permissão de esquema Implícito na permissão de esquema Implícito na permissão de banco de dados
ALTER CONTROL ALTER ANY SCHEMA
CONTROL CONTROL CONTROL
CREATE SEQUENCE ALTER ALTER ANY SCHEMA
Delete (excluir) CONTROL Delete (excluir)
Execute CONTROL Execute
INSERT CONTROL INSERT
REFERENCES CONTROL REFERENCES
SELECT CONTROL SELECT
TAKE OWNERSHIP CONTROL CONTROL
UPDATE CONTROL UPDATE
VIEW CHANGE TRACKING CONTROL CONTROL
VIEW DEFINITION CONTROL VIEW DEFINITION

Permissões

Requer a permissão CONTROL no esquema. Se você estiver usando a opção AS, a entidade especificada deverá ser proprietária do esquema.

Consulte Também

CREATE SCHEMA (Transact-SQL)
DENY (Transact-SQL)
Permissões (Mecanismo de Banco de Dados)
Entidades (Mecanismo de Banco de Dados)
sys.fn_builtin_permissions (Transact-SQL)
sys.fn_my_permissions (Transact-SQL)
HAS_PERMS_BY_NAME (Transact-SQL)