Come utilizzare i ruoli di SQL Server

Come Utilizzare I Ruoli Di Sql Server



Gli usi di SQL Server sono archiviare, recuperare e manipolare i dati. Una delle caratteristiche principali di SQL Server è la sua capacità di concedere e gestire le autorizzazioni a diversi utenti e gruppi. I ruoli di SQL Server sono un potente strumento che consente agli amministratori del database di assegnare un set di autorizzazioni a un gruppo di utenti con esigenze simili.

Questo articolo fornisce una guida su come utilizzare i ruoli di SQL Server, inclusa una panoramica dei diversi tipi di ruoli disponibili, esempi di come assegnare questi ruoli agli utenti e suggerimenti su come gestirli.







Cosa sono i ruoli SQL?

I ruoli consentono al DBA di gestire le autorizzazioni in modo più efficiente. Prima dobbiamo creare i ruoli. Quindi, assegniamo le autorizzazioni ai ruoli e quindi aggiungiamo gli accessi ai ruoli, di conseguenza.



SQL Server supporta principalmente due tipi di ruoli:



  • Ruoli fissi del server: Questi ruoli dispongono già di un set predefinito di autorizzazioni.
  • Ruoli del server definiti dall'utente: Questi ruoli possono essere modificati per soddisfare i requisiti dell'organizzazione.

Tipi di ruoli di SQL Server

SQL Server fornisce diversi ruoli incorporati che possono essere utilizzati per assegnare autorizzazioni agli utenti. Ecco alcuni dei ruoli più comuni e le relative autorizzazioni:





  • amministratore di massa: I membri del ruolo predefinito del server bulkadmin possono eseguire l'istruzione 'BULK INSERT'.
  • amministratore di sistema: Questo ruolo dispone del livello più elevato di autorizzazioni e può eseguire qualsiasi azione sull'istanza di SQL Server, inclusa la creazione, la modifica e l'eliminazione dei database e degli accessi.
  • amministratore del server: Questo ruolo può configurare le impostazioni a livello di server come l'allocazione della memoria e i protocolli di rete, ma non può modificare i database.
  • amministratore di sicurezza: Questo ruolo può gestire gli accessi e le relative autorizzazioni, inclusa la creazione e la modifica di accessi, ruoli e password.
  • processadmin: Il ruolo predefinito del server processadmin concede ai suoi membri la possibilità di terminare o arrestare i processi attualmente in esecuzione all'interno di un'istanza del Motore di database di SQL Server.
  • creatore : ha le autorizzazioni per creare, modificare e rimuovere i database, ma non possiede l'autorità per eseguire altri compiti amministrativi.
  • amministratore del disco: Questo ruolo può gestire i file su disco come la creazione e l'eliminazione di file e l'aggiunta o la rimozione di dischi.
  • lettore dati: Il ruolo datareader ha la capacità di accedere e leggere tutte le informazioni archiviate nelle tabelle utente di un database.
  • datawriter: Il ruolo Datawriter possiede l'autorità per inserire, aggiornare ed eliminare i dati da tutte le tabelle utente all'interno di un database.
  • ddladmin: Questo ruolo può creare, modificare ed eliminare i trigger e gli oggetti DDL (viste, tabelle e stored procedure).
  • pubblico: Per impostazione predefinita, tutti gli utenti, i gruppi e i ruoli di SQL Server vengono automaticamente inclusi nel ruolo predefinito del server pubblico.

Creazione del ruolo del server definito dall'utente utilizzando la GUI

La creazione di un ruolo del server definito dall'utente in SQL Server può essere eseguita tramite GUI usando SQL Server Management Studio (SSMS). Per creare un ruolo del server definito dall'utente utilizzando la GUI in SSMS, attenersi alla seguente procedura:

1. Avviare SQL Server Management Studio (SSMS) e stabilire una connessione all'istanza specifica di SQL Server.



2. Vai su Sicurezza -> Ruoli del server-> Nuovo ruolo del server.

3. Specificare un nome per il nuovo ruolo nella pagina Generale.

4. Specificare gli elementi a protezione diretta a livello di server per i quali il ruolo avrà le autorizzazioni nella pagina Elementi a protezione diretta.

5. Aggiungi eventuali utenti o altri ruoli nella pagina Membri.

Creazione e utilizzo del ruolo del server tramite T-SQL

La creazione e l'utilizzo di un ruolo del server tramite T-SQL in SQL Server è un altro modo per gestire le autorizzazioni a livello di server. Per creare un ruolo del server definito dall'utente utilizzando T-SQL, dobbiamo seguire questi passaggi:

1. Apri una nuova finestra di query ed esegui il seguente codice per creare il nuovo ruolo del server:

-- << Crea un ruolo del server definito dall'utente

USA [maestro]

ANDARE

CREA RUOLO DEL SERVER [DBA junior]

ANDARE

In questo esempio, creiamo un nuovo ruolo del server: 'Junior DBA'.

2. Eseguire il codice seguente per concedere le autorizzazioni al nuovo ruolo:

usa [maestro]

ANDARE

GRANT CREATE ANY DATABASE --<< ora può creare db

A [DBA junior]

ANDARE

In questo esempio, concediamo l'autorizzazione al nuovo ruolo, 'junior DBA', per creare i database.

GRANT VIEW ANY DATABASE --<< può solo visualizzare qualsiasi db ma non tabelle

A [DBA junior]

ANDARE

In questo esempio, il comando 'GRANT VIEW ANY DATABASE' viene utilizzato per concedere un'autorizzazione a livello di server che consente al ruolo di visualizzare i metadati per qualsiasi database sul server. In questo caso, concediamo questa autorizzazione al ruolo del server 'Junior DBA' che abbiamo creato in precedenza.

Tuttavia, è importante notare che la concessione dell'autorizzazione 'VISUALIZZA QUALSIASI DATABASE' non concede all'utente o al ruolo l'autorizzazione ad accedere ai dati all'interno dei database: consente semplicemente loro di vedere i metadati (come i nomi e gli schemi dei database).

3. Aggiungi un login o un account utente al nuovo ruolo eseguendo il seguente codice:

--add accessi sql al nuovo ruolo del server

RUOLO ALTER SERVER [DBA junior]

AGGIUNGI MEMBRO [Consiglio]

ANDARE

RUOLO ALTER SERVER [DBA junior]

AGGIUNGI MEMBRO [Rima]

ANDARE

In questo esempio, aggiungiamo gli account 'Papan' e 'Rima' come membri del ruolo 'junior DBA'.

Conclusione

I ruoli di SQL Server forniscono un potente strumento per gestire le autorizzazioni in un ambiente di database. Assegnando ruoli agli utenti, puoi assicurarti che dispongano del livello di accesso appropriato ai dati di cui hanno bisogno senza concedere loro privilegi non necessari. Che tu stia gestendo un piccolo database o un sistema aziendale di grandi dimensioni, comprendere come utilizzare i ruoli di SQL Server è una competenza importante che può aiutarti a mantenere la sicurezza e l'integrità dei tuoi dati.