DENY - autorizzazioni per server (Transact-SQL)

Nega le autorizzazioni per un server.

Icona di collegamento a un argomento Convenzioni della sintassi Transact-SQL

Sintassi

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
    | server_role 

<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
    | server_role

Argomenti

  • permission
    Specifica un'autorizzazione che può essere negata per un server. Per un elenco delle autorizzazioni, vedere la sezione Osservazioni di seguito in questo argomento.

  • CASCADE
    Indica che l'autorizzazione negata viene negata anche ad altre entità alle quali è stata concessa da questa entità.

  • TO <server_principal>
    Specifica l'entità a cui viene negata l'autorizzazione.

  • AS <grantor_principal>
    Specifica un'entità dalla quale l'entità che esegue la query ottiene il diritto di negare l'autorizzazione.

  • SQL_Server_login
    Specifica un account di accesso di SQL Server.

  • SQL_Server_login_mapped_to_Windows_login
    Specifica un account di accesso di SQL Server sul quale viene eseguito il mapping a un utente di Windows.

  • SQL_Server_login_mapped_to_Windows_group
    Specifica un account di accesso di SQL Server sul quale viene eseguito il mapping a un gruppo di Windows.

  • SQL_Server_login_mapped_to_certificate
    Specifica un account di accesso di SQL Server di cui è stato eseguito il mapping a un certificato.

  • SQL_Server_login_mapped_to_asymmetric_key
    Specifica un account di accesso di SQL Server di cui è stato eseguito il mapping a una chiave asimmetrica.

  • server_role
    Specifica un ruolo del server.

Osservazioni

È possibile negare autorizzazioni nell'ambito del server solo se il database corrente è il database master.

È possibile visualizzare le informazioni sulle autorizzazioni del server nella vista del catalogo sys.server_permissions e le informazioni sulle entità server nella vista del catalogo sys.server_principals. Le informazioni sulle appartenenze dei ruoli del server sono visibili nella vista del catalogo sys.server_role_members.

Un server rappresenta il livello più alto nella gerarchia delle autorizzazioni. Nella tabella seguente sono elencate le autorizzazioni più specifiche e limitate che è possibile negare per un server.

Autorizzazione del server

Autorizzazione del server in cui è inclusa

ADMINISTER BULK OPERATIONS

CONTROL SERVER

ALTER ANY AVAILABILITY GROUP

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 EVENT SESSION

CONTROL SERVER

ALTER ANY LINKED SERVER

CONTROL SERVER

ALTER ANY LOGIN

CONTROL SERVER

ALTER ANY SERVER AUDIT

CONTROL SERVER

ALTER ANY SERVER ROLE

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 ANY AVAILABILITY GROUP

ALTER ANY AVAILABILITY GROUP

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

Autorizzazioni

È richiesta l'autorizzazione CONTROL SERVER o la proprietà dell'entità a sicurezza diretta. Se si utilizza la clausola AS, l'entità specificata deve essere proprietaria dell'entità a sicurezza diretta per cui vengono negate le autorizzazioni.

Esempi

A.Negazione dell'autorizzazione CONNECT SQL a un account di accesso di SQL Server e alle entità a cui l'account di accesso ha concesso tale autorizzazione

Nell'esempio seguente viene negata l'autorizzazione CONNECT SQL all'account di accesso di SQL Server Annika e a tutte le entità a cui tale account di accesso ha concesso l'autorizzazione.

USE master;
DENY CONNECT SQL TO Annika CASCADE;
GO

B.Negazione dell'autorizzazione CREATE ENDPOINT a un account di accesso di SQL Server con l'opzione AS

Nell'esempio seguente viene negata l'autorizzazione CREATE ENDPOINT all'utente ArifS. Nell'esempio viene utilizzata l'opzione AS per specificare MandarP come entità da cui l'entità che esegue l'istruzione deriva il diritto di effettuare l'operazione.

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

Vedere anche

Riferimento

GRANT (Transact-SQL)

DENY (Transact-SQL)

DENY - autorizzazioni per server (Transact-SQL)

REVOKE - autorizzazioni per server (Transact-SQL)

sys.fn_builtin_permissions (Transact-SQL)

sys.fn_my_permissions (Transact-SQL)

HAS_PERMS_BY_NAME (Transact-SQL)

Concetti

Gerarchia delle autorizzazioni (Motore di database)