Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Si applica a:SQL Server
Istanza gestita di SQL di Azure
Concede le autorizzazioni per un server.
Convenzioni relative alla sintassi Transact-SQL
Sintassi
GRANT permission [ ,...n ]
TO <grantee_principal> [ ,...n ] [ WITH GRANT OPTION ]
[ 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 <grantee_principal> Specifica l'entità di sicurezza a cui viene concessa l'autorizzazione.
AS <grantor_principal> Specifica un'entità di sicurezza dalla quale l'entità che esegue la query ottiene il diritto di concedere l'autorizzazione.
CON GRANT OPZIONE
Indica che l'entità potrà inoltre concedere l'autorizzazione specificata ad altre entità.
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 concedere autorizzazioni nell'ambito del server solo se il database corrente è il database master.
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 concedere per un server.
| Autorizzazione del server | Autorizzazione del server in cui è inclusa |
|---|---|
| AMMINISTRARE LE OPERAZIONI MASSIVE | SERVER DI CONTROLLO |
| MODIFICA QUALSIASI AVAILABILITY GROUP Si applica a: SQL Server (SQL Server 2012 (11.x) fino alla versione corrente). |
SERVER DI CONTROLLO |
| ALTERARE QUALSIASI CONNESSIONE | SERVER DI CONTROLLO |
| MODIFICA QUALSIASI CREDENTIAL | SERVER DI CONTROLLO |
| MODIFICA QUALSIASI DATABASE | SERVER DI CONTROLLO |
| MODIFICA QUALSIASI ENDPOINT | SERVER DI CONTROLLO |
| MODIFICA QUALSIASI EVENT NOTIFICATION | SERVER DI CONTROLLO |
| MODIFICA QUALSIASI EVENT SESSION | SERVER DI CONTROLLO |
| MODIFICARE QUALSIASI SERVER COLLEGATO | SERVER DI CONTROLLO |
| MODIFICA QUALSIASI LOGIN | SERVER DI CONTROLLO |
| MODIFICA QUALSIASI SERVER AUDIT | SERVER DI CONTROLLO |
| MODIFICA QUALSIASI SERVER ROLE Si applica a: SQL Server (SQL Server 2012 (11.x) fino alla versione corrente). |
SERVER DI CONTROLLO |
| ALTER RISORSE | SERVER DI CONTROLLO |
| MODIFICA STATO DEL SERVER | SERVER DI CONTROLLO |
| MODIFICARE IMPOSTAZIONI | SERVER DI CONTROLLO |
| MODIFICA TRACCIA | SERVER DI CONTROLLO |
| Autenticare server | SERVER DI CONTROLLO |
| COLLEGA QUALSIASI DATABASE Si applica a: SQL Server (SQL Server 2014 (12.x) fino alla versione corrente). |
SERVER DI CONTROLLO |
| CONNECT SQL | SERVER DI CONTROLLO |
| SERVER DI CONTROLLO | SERVER DI CONTROLLO |
| CREA QUALSIASI DATABASE | MODIFICA QUALSIASI DATABASE |
| CREATE AVAILABILITY GROUP Si applica a: SQL Server (SQL Server 2012 (11.x) fino alla versione corrente). |
MODIFICA QUALSIASI AVAILABILITY GROUP |
| CREATE DDL EVENT NOTIFICATION | MODIFICA QUALSIASI EVENT NOTIFICATION |
| CREATE ENDPOINT | MODIFICA QUALSIASI ENDPOINT |
| CREATE LOGIN Si applica a: SQL Server 2022 (16.x) e versioni successive. |
MODIFICA QUALSIASI LOGIN |
| CREATE SERVER ROLE Si applica a: SQL Server (SQL Server 2012 (11.x) fino alla versione corrente). |
MODIFICA QUALSIASI SERVER ROLE |
| CREATE TRACE EVENT NOTIFICATION | MODIFICA QUALSIASI EVENT NOTIFICATION |
| ACCESSO ESTERNO ASSEMBLY | SERVER DI CONTROLLO |
| IMPERSONARE QUALSIASI LOGIN Si applica a: SQL Server (SQL Server 2014 (12.x) fino alla versione corrente). |
SERVER DI CONTROLLO |
| SELEZIONARE TUTTE LE USER ENTITÀ A PROTEZIONE DIRETTA Si applica a: SQL Server (SQL Server 2014 (12.x) fino alla versione corrente). |
SERVER DI CONTROLLO |
| SHUTDOWN | SERVER DI CONTROLLO |
| PERICOLOSO ASSEMBLY | SERVER DI CONTROLLO |
| VIEW QUALSIASI DATABASE | VIEW QUALSIASI DEFINIZIONE |
| VIEW QUALSIASI DEFINIZIONE | SERVER DI CONTROLLO |
| VIEW STATO SERVER | MODIFICA STATO DEL SERVER |
In SQL Server 2014 (12.x) sono state aggiunte le tre autorizzazioni server seguenti.
COLLEGA QUALSIASI DATABASE Permesso
Concedi CONNETTI QUALSIASI DATABASE a un login che deve connettersi a tutti i database attualmente esistenti e a eventuali nuovi database che potrebbero essere creati in futuro. Non concede alcuna autorizzazione nei database oltre la connessione. Combinare con SELECT ALL USER SECURABLES o VIEW SERVER STATE per permettere a un processo di audit di visualizzare tutti i dati o tutti gli stati del database sull'istanza di SQL Server.
IMPERSONARE QUALSIASI LOGIN Permesso
Quando viene concessa, consente a un processo di livello intermedio di rappresentare l'account dei client a cui ci si connette, quando si connette ai database. Quando viene negata, è possibile che a un account di accesso con privilegi elevati venga impedito di rappresentare altri account di accesso. Ad esempio, è possibile che a un account di accesso con autorizzazione CONTROL SERVER venga impedito di rappresentare altri account di accesso.
SELEZIONA TUTTI USER Permesso SECURABLES
Quando concessa, un account di accesso può visualizzare i dati da tutti gli oggetti a livello di schema, ad esempio tabelle e viste ed è possibile usare funzioni con valori di tabella che includono schemi scrivibili dall'utente (qualsiasi schema tranne sys e INFORMATION_SCHEMA) per creare oggetti utente. Questa autorizzazione ha effetto in tutti i database a cui l'utente può connettersi. Se negata, impedisce l'accesso a tutti gli oggetti a meno che non si trovino nello schema sys o INFORMATION_SCHEMA. Ciò ha effetto anche sulla visibilità dei metadati degli oggetti coperti. A tale scopo vedere anche: Configurazione della visibilità dei metadati.
Autorizzazioni
L'utente autorizzato (o l'entità specificata con l'opzione AS) deve avere l'autorizzazione stessa con GRANT OPTION o un'autorizzazione superiore che implica l'autorizzazione concessa. I membri del ruolo predefinito del server sysadmin possono concedere qualsiasi autorizzazione.
Esempi
R. Concessione di un'autorizzazione a un account di accesso
Nell'esempio seguente viene concessa l'autorizzazione CONTROL SERVER all'account di accesso di SQL Server TerryEminhizer.
USE master;
GRANT CONTROL SERVER TO TerryEminhizer;
GO
B. Concedere un permesso che ha GRANT permesso
Nell'esempio seguente viene concessa l'autorizzazione ALTER ANY EVENT NOTIFICATION all'account di accesso di SQL Server JanethEsteves con il diritto di concedere tale autorizzazione a un altro account di accesso.
USE master;
GRANT ALTER ANY EVENT NOTIFICATION TO JanethEsteves WITH GRANT OPTION;
GO
C. Concessione di un'autorizzazione a un ruolo del server
Nell'esempio seguente viene creato un ruolo del server denominato ITDevelopers. Concede l'autorizzazione ALTER ANY DATABASE al ruolo del server ITDevelopers.
USE master;
CREATE SERVER ROLE ITDevelopers ;
GRANT ALTER ANY DATABASE TO ITDevelopers ;
GO
Vedi anche
GRANT (Transact-SQL)
DENY (Transact-SQL)
DENY Autorizzazioni server (Transact-SQL)
REVOKE Autorizzazioni server (Transact-SQL)
Gerarchia delle autorizzazioni (Motore di database)
Entità di sicurezza (Motore di database)
Autorizzazioni (Motore di database)
sys.fn_builtin_permissions (Transact-SQL)
sys.fn_my_permissions (Transact-SQL)
HAS_PERMS_BY_NAME (Transact-SQL)