DENY (autorizzazioni per schemi) (Transact-SQL)
Si applica a: SQL Server database SQL di Azure Istanza gestita di SQL di Azure
Nega autorizzazioni per uno schema.
Convenzioni relative alla sintassi Transact-SQL
Sintassi
DENY permission [ ,...n ] } ON SCHEMA :: schema_name
TO database_principal [ ,...n ]
[ CASCADE ]
[ AS denying_principal ]
Nota
Per visualizzare la sintassi Transact-SQL per SQL Server 2014 (12.x) e versioni precedenti, vedere Documentazione delle versioni precedenti.
Argomenti
permission
Specifica un'autorizzazione che può essere negata per uno schema. Per un elenco di queste autorizzazioni, vedere la sezione Osservazioni di seguito in questo articolo.
ON SCHEMA :: schema*_name*
Specifica lo schema per cui viene negata l'autorizzazione. Il qualificatore di ambito :: è obbligatorio.
database_principal
Specifica l'entità a cui viene negata l'autorizzazione. database_principal può essere una delle seguenti entità di sicurezza:
- Utente del database
- Ruolo del database
- Ruolo applicazione
- Utente del database di cui è stato eseguito il mapping a un account di accesso di Windows
- Utente del database di cui è stato eseguito il mapping a un gruppo di Windows
- Utente del database di cui è stato eseguito il mapping a un certificato
- Utente del database di cui è stato eseguito il mapping a una chiave asimmetrica
- Utente del database sul quale non viene eseguito il mapping ad alcuna entità server
CASCADE
Nega l'autorizzazione a eventuali altre entità per cui l'oggetto specificato database_principal ha concesso l'autorizzazione.
denying_principal
Specifica un'entità dalla quale l'entità che esegue la query ottiene il diritto di negare l'autorizzazione. denying_principal può essere una delle seguenti entità di sicurezza:
- Utente del database
- Ruolo del database
- Ruolo applicazione
- Utente del database di cui è stato eseguito il mapping a un account di accesso di Windows
- Utente del database di cui è stato eseguito il mapping a un gruppo di Windows
- Utente del database di cui è stato eseguito il mapping a un certificato
- Utente del database di cui è stato eseguito il mapping a una chiave asimmetrica
- Utente del database sul quale non viene eseguito il mapping ad alcuna entità server
Osservazioni:
Uno schema è un'entità a protezione diretta a livello di database, contenuta nel database padre nella gerarchia di autorizzazioni. Nella tabella seguente sono elencate le autorizzazioni più specifiche e limitate che è possibile negare per uno schema. La tabella contiene le autorizzazioni più generali che le includono in modo implicito.
Autorizzazione dello schema | Autorizzazione dello schema in cui è inclusa | Autorizzazione del database in cui è inclusa |
---|---|---|
ALTER | CONTROL | ALTER ANY SCHEMA |
CONTROL | CONTROL | CONTROL |
CREATE SEQUENCE | ALTER | ALTER ANY SCHEMA |
DELETE | CONTROL | DELETE |
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 |
Autorizzazioni
È richiesta l'autorizzazione CONTROL per lo schema. Se si usa l'opzione AS, l'entità specificata deve essere proprietaria dello schema.
Vedi anche
CREATE SCHEMA (Transact-SQL)
DENY (Transact-SQL)
Autorizzazioni (Motore di database)
Entità di sicurezza (Motore di database)
sys.fn_builtin_permissions (Transact-SQL)
sys.fn_my_permissions (Transact-SQL)
HAS_PERMS_BY_NAME (Transact-SQL)