Ruoli a livello di server

Per una facile gestione delle autorizzazioni del server, in SQL Server sono forniti diversi ruoli rappresentanti entità di protezione all'interno delle quali sono raggruppate altre entità. I ruoli sono come i gruppi nel sistema operativo Microsoft Windows.

I ruoli predefiniti del server vengono forniti per convenienza e per la compatibilità con versioni precedenti. Quando possibile, assegnare autorizzazioni più specifiche.

I ruoli a livello di server sono denominati anche ruoli predefiniti del server poiché non è possibile creare ruoli nuovi a livello di server. L'ambito delle autorizzazioni dei ruoli a livello di server è l'intero server.

È possibile aggiungere accessi SQL Server, account di Windows e gruppi di Windows in ruoli a livello di server. Tutti i membri di un ruolo predefinito del server possono aggiungere altri account di accesso allo stesso ruolo.

Nella tabella seguente sono mostrati i ruoli a livello di server e le relative funzionalità.

Nome ruolo a livello di server

Descrizione

sysadmin

I membri del ruolo predefinito del server sysadmin sono autorizzati a effettuare qualsiasi attività nel server.

serveradmin

I membri del ruolo predefinito del server serveradmin sono autorizzati a modificare le opzioni di configurazione a livello di server e ad arrestare il server.

securityadmin

I membri del ruolo predefinito del server securityadmin sono autorizzati a gestire gli account di accesso e le relative proprietà. Possono concedere, negare e revocare le autorizzazioni a livello di server e a livello di database. Questi membri sono inoltre autorizzati a reimpostare le password per gli account di accesso di SQL Server.

Nota sulla protezioneNota sulla protezione
La possibilità di concedere l'accesso al Motore di database e di configurare autorizzazioni utente consente all'amministratore della protezione di assegnare la maggior parte delle autorizzazioni server. Il ruolo securityadmin deve essere trattato come il ruolo sysadmin.

processadmin

I membri del ruolo predefinito del server processadmin sono autorizzati a terminare processi in esecuzione in un'istanza di SQL Server.

setupadmin

I membri del ruolo predefinito del server setupadmin sono autorizzati ad aggiungere e rimuovere server collegati.

bulkadmin

I membri del ruolo predefinito del server bulkadmin sono autorizzati a eseguire l'istruzione BULK INSERT.

diskadmin

Il ruolo predefinito del server diskadmin consente di gestire i file su disco.

dbcreator

I membri del ruolo predefinito del server dbcreator sono autorizzati a creare, modificare, eliminare e ripristinare qualsiasi database.

public

Ogni account di accesso di SQL Server appartiene al ruolo del server public. Quando a un'entità del server non sono state concesse o sono state negate autorizzazioni specifiche per un oggetto a protezione diretta, l'utente eredita le autorizzazioni concesse a public su tale oggetto. Assegnare le autorizzazioni public su un oggetto solo quando si desidera che l'oggetto sia disponibile a tutti gli utenti.

Per informazioni specifiche sulle autorizzazioni del ruolo a livello di server, vedere Autorizzazioni dei ruoli predefiniti del server (Motore di database).

Utilizzo di ruoli a livello di server

Nella tabella seguente sono spiegati i comandi, le viste e le funzioni necessari per l'utilizzo dei ruoli a livello di server.

Funzionalità

Tipo

Descrizione

sp_helpsrvrole (Transact-SQL)

Metadati

Restituisce un elenco di ruoli a livello di server.

sp_helpsrvrolemember (Transact-SQL)

Metadati

Restituisce informazioni sui membri di un ruolo a livello di server.

sp_srvrolepermission (Transact-SQL)

Metadati

Visualizza le autorizzazioni di un ruolo a livello di server.

IS_SRVROLEMEMBER (Transact-SQL)

Metadati

Indica se un account di accesso di SQL Server è un membro del ruolo a livello di server specificato.

sys.server_role_members (Transact-SQL)

Metadati

Restituisce una riga per ogni membro di ogni ruolo a livello di server.

sp_addsrvrolemember (Transact-SQL)

Comando

Aggiunge un account di accesso come membro di un ruolo a livello di server.

sp_dropsrvrolemember (Transact-SQL)

Comando

Rimuove un account di accesso di SQL Server oppure un utente o un gruppo di Windows da un ruolo a livello di server.