REVOKE - autorizzazioni per server (Transact-SQL)
Si applica a: SQL Server Istanza gestita di SQL di Azure
Rimuove le autorizzazioni GRANT e DENY a livello del server.
Convenzioni relative alla sintassi Transact-SQL
Sintassi
REVOKE [ GRANT OPTION FOR ] permission [ ,...n ]
{ TO | FROM } <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 concessa per un server. Per un elenco delle autorizzazioni, vedere la sezione Osservazioni di seguito in questo argomento.
{ TO | FROM } <grantee_principal> Specifica l'entità da cui viene revocata l'autorizzazione.
AS <grantor_principal> Specifica l'entità dalla quale l'entità che esegue la query ottiene il diritto di revocare l'autorizzazione.
GRANT OPTION FOR
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.
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 mappato a un account di accesso di Windows.
SQL_Server_login_mapped_to_Windows_group
Specifica un account di accesso di SQL Server mappato a un gruppo di Windows.
SQL_Server_login_mapped_to_certificate
Specifica un account di accesso di SQL Server mappato a un certificato.
SQL_Server_login_mapped_to_asymmetric_key
Specifica un account di accesso di SQL Server mappato a una chiave asimmetrica.
server_role
Specifica un ruolo del server definito dall'utente.
Osservazioni:
È possibile revocare autorizzazioni nell'ambito del server solo se il database corrente è il database master.
Con REVOKE vengono rimosse sia le autorizzazioni GRANT che le autorizzazioni DENY.
Utilizzare REVOKE GRANT OPTION FOR per revocare il diritto di riconcedere l'autorizzazione specificata. Se l'entità dispone dell'autorizzazione con il diritto di concessione, verrà revocato il diritto di concedere tale autorizzazione, ma l'autorizzazione stessa non verrà revocata. Se invece l'entità dispone dell'autorizzazione specificata senza opzione GRANT, verrà revocata l'autorizzazione stessa.
Le informazioni sulle autorizzazioni del server sono visibili 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 revocare per un server.
Autorizzazione del server | Autorizzazione del server in cui è inclusa |
---|---|
ADMINISTER BULK OPERATIONS | CONTROL SERVER |
ALTER ANY AVAILABILITY GROUP Si applica a: SQL Server (SQL Server 2012 (11.x) fino alla versione corrente). |
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 Si applica a: SQL Server (SQL Server 2012 (11.x) fino alla versione corrente). |
CONTROL SERVER |
ALTER RESOURCES | CONTROL SERVER |
ALTER SERVER STATE | CONTROL SERVER |
ALTER SETTINGS | CONTROL SERVER |
ALTER TRACE | CONTROL SERVER |
AUTHENTICATE SERVER | CONTROL SERVER |
CONNECT ANY DATABASE Si applica a: SQL Server (SQL Server 2014 (12.x) fino alla versione corrente). |
CONTROL SERVER |
CONNECT SQL | CONTROL SERVER |
CONTROL SERVER | CONTROL SERVER |
CREATE ANY DATABASE | ALTER ANY DATABASE |
CREATE AVAILABILITY GROUP Si applica a: SQL Server (SQL Server 2012 (11.x) fino alla versione corrente). |
ALTER ANY AVAILABILITY GROUP |
CREATE DDL EVENT NOTIFICATION | ALTER ANY EVENT NOTIFICATION |
CREATE ENDPOINT | ALTER ANY ENDPOINT |
CREATE SERVER ROLE Si applica a: SQL Server (SQL Server 2012 (11.x) fino alla versione corrente). |
ALTER ANY SERVER ROLE |
CREATE TRACE EVENT NOTIFICATION | ALTER ANY EVENT NOTIFICATION |
EXTERNAL ACCESS ASSEMBLY | CONTROL SERVER |
IMPERSONATE ANY LOGIN Si applica a: SQL Server (SQL Server 2014 (12.x) fino alla versione corrente). |
CONTROL SERVER |
SELECT ALL USER SECURABLES Si applica a: SQL Server (SQL Server 2014 (12.x) fino alla versione corrente). |
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 l'appartenenza al ruolo predefinito del server sysadmin.
Esempi
R. Revoca di un'autorizzazione a un account di accesso
Nell'esempio seguente viene revocata l'autorizzazione VIEW SERVER STATE
all'account di accesso di SQL Server WanidaBenshoof
.
USE master;
REVOKE VIEW SERVER STATE FROM WanidaBenshoof;
GO
B. Revoca dell'opzione WITH GRANT
Nell'esempio seguente viene revocato il diritto a concedere CONNECT SQL
all'account di accesso di SQL Server JanethEsteves
.
USE master;
REVOKE GRANT OPTION FOR CONNECT SQL FROM JanethEsteves;
GO
L'account di accesso dispone ancora dell'autorizzazione CONNECT SQL, ma non potrà più concedere tale autorizzazione ad altre entità.
Vedi anche
GRANT (Transact-SQL)
DENY (Transact-SQL)
DENY - autorizzazioni per server (Transact-SQL)
REVOKE - autorizzazioni per server (Transact-SQL)
Gerarchia delle autorizzazioni (Motore di database)
sys.fn_builtin_permissions (Transact-SQL)
sys.fn_my_permissions (Transact-SQL)
HAS_PERMS_BY_NAME (Transact-SQL)