Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Aplica-se a:SQL Server
Base de Dados SQL do Azure
Instância Gerida do Azure SQL
Azure Synapse Analytics
Sistema de Plataforma de Análise (PDW)
Ponto de Extremidade de Análise SQL no Microsoft Fabric
Armazém no Microsoft Fabric
Base de Dados SQL no Microsoft Fabric
Nega permissões em um banco de dados no SQL Server.
Transact-SQL convenções de sintaxe
Syntax
DENY <permission> [ ,...n ]
TO <database_principal> [ ,...n ] [ CASCADE ]
[ AS <database_principal> ]
<permission> ::=
permission | ALL [ PRIVILEGES ]
<database_principal> ::=
Database_user
| Database_role
| Application_role
| Database_user_mapped_to_Windows_User
| Database_user_mapped_to_Windows_Group
| Database_user_mapped_to_certificate
| Database_user_mapped_to_asymmetric_key
| Database_user_with_no_login
Arguments
permissão Especifica uma permissão que pode ser negada em um banco de dados. Para obter uma lista das permissões, consulte a seção Comentários mais adiante neste tópico.
ALL Esta opção não nega todas as permissões possíveis. Negar TODOS é equivalente a negar as seguintes permissões: BACKUP, LOG, CREATE DATABASE, CREATE DEFAULT, CREATE FUNCTION, CREATE PROCEDURE, CREATE RULE, , CREATE TABLE, e CREATE VIEW. BACKUPDATABASE
PRIVILÉGIOS Incluídos para conformidade ISO. Não altera o comportamento da ALL.
CASCADE Indica que a permissão também será negada aos principais aos quais o principal especificado a concedeu.
AS <database_principal> Especifica uma entidade da qual a entidade que executa esta consulta deriva seu direito de negar a permissão.
Database_user Especifica um usuário de banco de dados.
Database_role Especifica uma função de banco de dados.
Application_roleAplica-se a: SQL Server 2008 (10.0.x) e posterior, Banco de dados SQL.
Especifica uma função de aplicativo.
Database_user_mapped_to_Windows_User Especifica um usuário de banco de dados mapeado para um usuário do Windows.
Database_user_mapped_to_Windows_Group Especifica um usuário de banco de dados mapeado para um grupo do Windows.
Database_user_mapped_to_certificate Especifica um usuário de banco de dados mapeado para um certificado.
Database_user_mapped_to_asymmetric_key Especifica um usuário de banco de dados mapeado para uma chave assimétrica.
Database_user_with_no_login Especifica um usuário de banco de dados sem entidade de segurança correspondente no nível do servidor.
Remarks
Um banco de dados é um protegível contido pelo servidor que é seu pai na hierarquia de permissões. As permissões mais específicas e limitadas que podem ser negadas em um banco de dados estão listadas na tabela a seguir, juntamente com as permissões mais gerais que as incluem por implicação.
| Permissão de base de dados | Implícito pela permissão do banco de dados | Implícito pela permissão do servidor |
|---|---|---|
| ADMINISTRAÇÃO DATABASE DE OPERAÇÕES A GRANEL Aplica-se a: Banco de dados SQL. |
CONTROL | SERVIDOR DE CONTROLO |
| ALTER | CONTROL | ALTER QUALQUER DATABASE |
| ALTER QUALQUER APPLICATION ROLE | ALTER | SERVIDOR DE CONTROLO |
| ALTER QUALQUER ASSEMBLY | ALTER | SERVIDOR DE CONTROLO |
| ALTER QUALQUER ASYMMETRIC KEY | ALTER | SERVIDOR DE CONTROLO |
| ALTER QUALQUER CERTIFICATE | ALTER | SERVIDOR DE CONTROLO |
| ALTER QUALQUER COLUMN ENCRYPTION KEY | ALTER | SERVIDOR DE CONTROLO |
| ALTERAR QUALQUER COLUMN MASTER KEY DEFINIÇÃO | ALTER | SERVIDOR DE CONTROLO |
| ALTER QUALQUER CONTRACT | ALTER | SERVIDOR DE CONTROLO |
| ALTERAR QUALQUER DATABASE AUDITORIA | ALTER | ALTER QUALQUER SERVER AUDIT |
| ALTERAR QUALQUER DATABASE DDL TRIGGER | ALTER | SERVIDOR DE CONTROLO |
| ALTERAR QUALQUER DATABASEEVENT NOTIFICATION | ALTER | ALTER QUALQUER EVENT NOTIFICATION |
| ALTERAR QUALQUER DATABASEEVENT SESSION Aplica-se a: Banco de Dados SQL do Azure. |
ALTER | ALTER QUALQUER EVENT SESSION |
| ALTER QUALQUER DATABASE SCOPED CONFIGURATION Aplica-se a: SQL Server 2016 (13.x) e posterior, Banco de dados SQL. |
CONTROL | SERVIDOR DE CONTROLO |
| ALTERAR QUALQUER ESPAÇO DE DADOS | ALTER | SERVIDOR DE CONTROLO |
| ALTER QUALQUER EXTERNAL DATA SOURCE | ALTER | SERVIDOR DE CONTROLO |
| ALTER QUALQUER EXTERNAL FILE FORMAT | ALTER | SERVIDOR DE CONTROLO |
| ALTER QUALQUER EXTERNAL LIBRARY Aplica-se a: SQL Server 2017 (14.x). |
CONTROL | SERVIDOR DE CONTROLO |
| ALTER QUALQUER FULLTEXT CATALOG | ALTER | SERVIDOR DE CONTROLO |
| ALTERE QUALQUER MÁSCARA | CONTROL | SERVIDOR DE CONTROLO |
| ALTER QUALQUER MESSAGE TYPE | ALTER | SERVIDOR DE CONTROLO |
| ALTER QUALQUER REMOTE SERVICE BINDING | ALTER | SERVIDOR DE CONTROLO |
| ALTER QUALQUER ROLE | ALTER | SERVIDOR DE CONTROLO |
| ALTER QUALQUER ROUTE | ALTER | SERVIDOR DE CONTROLO |
| ALTER QUALQUER SECURITY POLICY Aplica-se a: SQL Server 2016 (13.x) e posterior, Banco de Dados SQL do Azure. |
CONTROL | SERVIDOR DE CONTROLO |
| ALTER QUALQUER SCHEMA | ALTER | SERVIDOR DE CONTROLO |
| ALTER QUALQUER SERVICE | ALTER | SERVIDOR DE CONTROLO |
| ALTER QUALQUER SYMMETRIC KEY | ALTER | SERVIDOR DE CONTROLO |
| ALTER QUALQUER USER | ALTER | SERVIDOR DE CONTROLO |
| AUTHENTICATE | CONTROL | AUTENTICAR SERVIDOR |
| BACKUP DATABASE | CONTROL | SERVIDOR DE CONTROLO |
| BACKUP LOG | CONTROL | SERVIDOR DE CONTROLO |
| CHECKPOINT | CONTROL | SERVIDOR DE CONTROLO |
| CONNECT | REPLICAÇÃO CONNECT | SERVIDOR DE CONTROLO |
| REPLICAÇÃO CONNECT | CONTROL | SERVIDOR DE CONTROLO |
| CONTROL | CONTROL | SERVIDOR DE CONTROLO |
| CREATE AGGREGATE | ALTER | SERVIDOR DE CONTROLO |
| CREATE ASSEMBLY | ALTER QUALQUER ASSEMBLY | SERVIDOR DE CONTROLO |
| CREATE ASYMMETRIC KEY | ALTER QUALQUER ASYMMETRIC KEY | SERVIDOR DE CONTROLO |
| CREATE CERTIFICATE | ALTER QUALQUER CERTIFICATE | SERVIDOR DE CONTROLO |
| CREATE CONTRACT | ALTER QUALQUER CONTRACT | SERVIDOR DE CONTROLO |
| CREATE DATABASE | CONTROL | CRIAR QUALQUER DATABASE |
| CREATE DATABASE DDL EVENT NOTIFICATION | ALTERAR QUALQUER DATABASEEVENT NOTIFICATION | CRIAR DDL EVENT NOTIFICATION |
| CREATE DEFAULT | ALTER | SERVIDOR DE CONTROLO |
| CREATE FULLTEXT CATALOG | ALTER QUALQUER FULLTEXT CATALOG | SERVIDOR DE CONTROLO |
| CREATE FUNCTION | ALTER | SERVIDOR DE CONTROLO |
| CREATE MESSAGE TYPE | ALTER QUALQUER MESSAGE TYPE | SERVIDOR DE CONTROLO |
| CREATE PROCEDURE | ALTER | SERVIDOR DE CONTROLO |
| CREATE QUEUE | ALTER | SERVIDOR DE CONTROLO |
| CREATE REMOTE SERVICE BINDING | ALTER QUALQUER REMOTE SERVICE BINDING | SERVIDOR DE CONTROLO |
| CREATE ROLE | ALTER QUALQUER ROLE | SERVIDOR DE CONTROLO |
| CREATE ROUTE | ALTER QUALQUER ROUTE | SERVIDOR DE CONTROLO |
| CREATE RULE | ALTER | SERVIDOR DE CONTROLO |
| CREATE SCHEMA | ALTER QUALQUER SCHEMA | SERVIDOR DE CONTROLO |
| CREATE SERVICE | ALTER QUALQUER SERVICE | SERVIDOR DE CONTROLO |
| CREATE SYMMETRIC KEY | ALTER QUALQUER SYMMETRIC KEY | SERVIDOR DE CONTROLO |
| CREATE SYNONYM | ALTER | SERVIDOR DE CONTROLO |
| CREATE TABLE | ALTER | SERVIDOR DE CONTROLO |
| CREATE TYPE | ALTER | SERVIDOR DE CONTROLO |
| CREATE VIEW | ALTER | SERVIDOR DE CONTROLO |
| CREATE XML SCHEMA COLLECTION | ALTER | SERVIDOR DE CONTROLO |
| DELETE | CONTROL | SERVIDOR DE CONTROLO |
| EXECUTE | CONTROL | SERVIDOR DE CONTROLO |
| EXECUTE QUALQUER SCRIPT EXTERNO Aplica-se a: SQL Server 2016 (13.x). |
CONTROL | SERVIDOR DE CONTROLO |
| INSERT | CONTROL | SERVIDOR DE CONTROLO |
| KILL DATABASE CONNECTION Aplica-se a: Banco de Dados SQL do Azure. |
CONTROL | ALTERAR QUALQUER LIGAÇÃO |
| REFERENCES | CONTROL | SERVIDOR DE CONTROLO |
| SELECT | CONTROL | SERVIDOR DE CONTROLO |
| SHOWPLAN | CONTROL | ALTERAR RASTREAMENTO |
| SUBSCREVER NOTIFICAÇÕES DE CONSULTA | CONTROL | SERVIDOR DE CONTROLO |
| ASSUMIR A RESPONSABILIDADE | CONTROL | SERVIDOR DE CONTROLO |
| UNMASK | CONTROL | SERVIDOR DE CONTROLO |
| UPDATE | CONTROL | SERVIDOR DE CONTROLO |
| VIEW QUALQUER COLUMN ENCRYPTION KEY | CONTROL | VIEW QUALQUER DEFINIÇÃO |
| VIEW QUALQUER MASTER KEY DEFINIÇÃO | CONTROL | VIEW QUALQUER DEFINIÇÃO |
| VIEW DATABASE ESTADO | CONTROL | VIEW ESTADO DO SERVIDOR |
| VIEW DEFINIÇÃO | CONTROL | VIEW QUALQUER DEFINIÇÃO |
Permissions
A entidade de segurança que executa essa instrução (ou a entidade de segurança especificada com a opção AS) deve ter permissão CONTROL no banco de dados ou uma permissão superior que implique permissão CONTROL no banco de dados.
Se você estiver usando a opção AS, a entidade de segurança especificada deverá ser proprietária do banco de dados.
Examples
A. Negar permissão para criar certificados
O exemplo a seguir nega CREATE CERTIFICATE permissão AdventureWorks2025 no banco de dados ao usuário MelanieK.
USE AdventureWorks2022;
DENY CREATE CERTIFICATE TO MelanieK;
GO
B. Negando a permissão REFERENCES para uma função de aplicativo
O exemplo a seguir nega REFERENCES permissão AdventureWorks2025 no banco de dados para a função AuditMonitorde aplicativo.
Aplica-se a: SQL Server 2008 (10.0.x) e posterior, Banco de dados SQL.
USE AdventureWorks2022;
DENY REFERENCES TO AuditMonitor;
GO
C. Negar VIEW a DEFINIÇÃO com CASCATA
O exemplo a seguir nega VIEW DEFINITION permissão AdventureWorks2025 no banco de dados ao usuário CarmineEs e a todas as entidades às quais CarmineEs concedeu VIEW DEFINITION permissão.
USE AdventureWorks2022;
DENY VIEW DEFINITION TO CarmineEs CASCADE;
GO