Autorizzazioni per entità server REVOKE (Transact-SQL)

Si applica a:SQL Server Istanza gestita di SQL di Azure

Revoca le autorizzazioni concesse o negate per un account di accesso di SQL Server.

Convenzioni di sintassi Transact-SQL

Sintassi

REVOKE [ GRANT OPTION FOR ] permission [ ,...n ] }   
    ON   
    { [ LOGIN :: SQL_Server_login ]  
      | [ SERVER ROLE :: server_role ] }   
    { FROM | TO } <server_principal> [ ,...n ]  
    [ CASCADE ]  
    [ AS SQL_Server_login ]   
  
<server_principal> ::=   
    SQL_Server_login  
    | SQL_Server_login_from_Windows_login   
    | SQL_Server_login_from_certificate   
    | SQL_Server_login_from_AsymKey     
    | server_role  

Nota

Per visualizzare la sintassi Transact-SQL per SQL Server 2014 (12.x) e versioni precedenti, vedere la documentazione delle versioni precedenti.

Argomenti

permission
Specifica un'autorizzazione che può essere revocata per un account di accesso di SQL Server. Per un elenco delle autorizzazioni, vedere la sezione Osservazioni di seguito in questo argomento.

LOGIN ::SQL_Server_login
Specifica l'account di accesso di SQL Server per cui viene revocata l'autorizzazione. Il qualificatore di ambito (::) è obbligatorio.

SERVER ROLE ::server_role
Specifica il ruolo del server a cui viene revocata l'autorizzazione. Il qualificatore di ambito (::) è obbligatorio.

{ FROM | TO } <server_principal> Specifica l'account di accesso o il ruolo del server di SQL Server per cui viene revocata l'autorizzazione.

SQL_Server_login
Specifica il nome di un account di accesso di SQL Server.

SQL_Server_login_from_Windows_login
Specifica il nome di un account di accesso di SQL Server creato da un account di accesso di Windows.

SQL_Server_login_from_certificate
Specifica il nome di un account di accesso di SQL Server con il mapping a un certificato.

SQL_Server_login_from_AsymKey
Specifica il nome di un account di accesso di SQL Server con il mapping a una chiave asimmetrica.

server_role
Specifica il nome di un ruolo del server definito dall'utente.

GRANT OPTION
Indica che verrà revocato il diritto di concedere l'autorizzazione specificata ad altre entità. L'autorizzazione stessa non verrà revocata.

Importante

Se l'autorizzazione specificata è stata concessa all'entità senza l'opzione GRANT, l'autorizzazione stessa verrà revocata.

CASCADE
Indica che l'autorizzazione che viene revocata anche ad altre entità a cui è stata concessa o negata da questa entità.

Attenzione

La revoca propagata di un'autorizzazione concessa con WITH GRANT OPTION comporterà la revoca sia delle autorizzazioni GRANT che delle autorizzazioni DENY per tale autorizzazione.

AS SQL_Server_login
Specifica l'account di accesso di SQL Server dal quale l'entità che esegue la query ottiene il diritto di revocare l'autorizzazione.

Osservazioni:

I ruoli del server e gli account di accesso di SQL Server sono entità a protezione diretta a livello di server. Nella tabella seguente sono elencate le autorizzazioni più specifiche e limitate che è possibile revocare per un ruolo del server o un account di accesso di SQL Server, insieme alle autorizzazioni più generali che le includono in modo implicito.

Autorizzazione del ruolo del server o dell'account di accesso di SQL Server Autorizzazione del ruolo del server o dell'account di accesso di SQL Server in cui è inclusa Autorizzazione del server in cui è inclusa
CONTROL CONTROL CONTROL SERVER
IMPERSONATE CONTROL CONTROL SERVER
VIEW DEFINITION CONTROL VIEW ANY DEFINITION
ALTER CONTROL ALTER ANY LOGIN

ALTER ANY SERVER ROLE

Autorizzazioni

Per gli account di accesso, è richiesta l'autorizzazione CONTROL per l'account di accesso o l'autorizzazione ALTER ANY LOGIN per il server.

Per i ruoli del server, è richiesta l'autorizzazione CONTROL per il ruolo del server o l'autorizzazione ALTER ANY SERVER ROLE per il server.

Esempi

R. Revoca dell'autorizzazione IMPERSONATE per un account di accesso

Nell'esempio seguente viene revocata l'autorizzazione IMPERSONATE per l'account di accesso di SQL Server WanidaBenshoof a un account di accesso di SQL Server creato dall'utente di Windows AdvWorks\YoonM.

USE master;  
REVOKE IMPERSONATE ON LOGIN::WanidaBenshoof FROM [AdvWorks\YoonM];  
GO  

B. Revoca dell'autorizzazione VIEW DEFINITION con CASCADE

Nell'esempio seguente viene revocata l'autorizzazione VIEW DEFINITION per l'account di accesso di SQL Server EricKurjan all'account di accesso di SQL Server RMeyyappan. L'opzione CASCADE indica che l'autorizzazione VIEW DEFINITION per EricKurjan verrà revocata anche alle entità a cui RMeyyappan ha concesso tale autorizzazione.

USE master;  
REVOKE VIEW DEFINITION ON LOGIN::EricKurjan FROM RMeyyappan   
    CASCADE;  
GO   

C. Revoca dell'autorizzazione VIEW DEFINITION per un ruolo del server

Nell'esempio seguente viene revocata l'autorizzazione VIEW DEFINITION nel ruolo del server Sales per il ruolo del server Auditors.

USE master;  
REVOKE VIEW DEFINITION ON SERVER ROLE::Sales TO Auditors ;  
GO   

Vedi anche

sys.server_principals (Transact-SQL)
sys.server_permissions (Transact-SQL)
GRANT - Autorizzazioni per entità server (Transact-SQL)
DENY - Autorizzazioni per entità server (Transact-SQL)
CREATE LOGIN (Transact-SQL)
Entità (motore di database)
Autorizzazioni (Motore di database)
Funzioni di sicurezza (Transact-SQL)
Stored procedure di sicurezza (Transact-SQL)