Gestire i ruoli di sicurezza del database
Si applica a: ✅Microsoft Fabric✅Azure Esplora dati
Alle entità di sicurezza viene concesso l'accesso alle risorse tramite un modello di controllo degli accessi in base al ruolo, in cui i ruoli di sicurezza assegnati determinano l'accesso alle risorse.
In questo articolo si apprenderà come usare i comandi di gestione per visualizzare i ruoli di sicurezza esistenti e aggiungere ed eliminare l'associazione di entità ai ruoli di sicurezza a livello di database.
Autorizzazioni
Per eseguire questi comandi, è necessario disporre almeno delle autorizzazioni di amministratore del database.
Nota
Per eliminare un database, sono necessarie almeno le autorizzazioni di Collaboratore Azure Resource Manager (ARM). Per assegnare le autorizzazioni arm, vedere Assegnare i ruoli di Azure usando il portale di Azure.
Ruoli di sicurezza a livello di database
Nella tabella seguente vengono illustrati i possibili ruoli di sicurezza a livello di database e vengono descritte le autorizzazioni concesse per ogni ruolo.
Ruolo | Autorizzazioni |
---|---|
admins |
Visualizzare e modificare le entità di database e database. |
users |
Visualizzare il database e creare nuove entità di database. |
viewers |
Visualizzare le tabelle nel database in cui RestrictedViewAccess non è attivato. |
unrestrictedviewers |
Visualizzare le tabelle nel database anche in cui è attivato RestrictedViewAccess . L'entità deve disporre admins anche di autorizzazioni , viewers o users . |
ingestors |
Inserire dati nel database senza accedere alla query. |
monitors |
Visualizzare i metadati del database, ad esempio schemi, operazioni e autorizzazioni. |
Nota
Non è possibile assegnare il viewer
ruolo solo per alcune tabelle nel database. Per approcci diversi su come concedere a una vista principale l'accesso a un subset di tabelle, vedere Gestire l'accesso alle viste tabelle.
Visualizzare i ruoli di sicurezza esistenti
Prima di aggiungere o rimuovere entità, è possibile usare il .show
comando per visualizzare una tabella con tutte le entità e i ruoli già impostati nel database.
Sintassi
Per visualizzare tutti i ruoli:
.show
database
DatabaseName principals
Per visualizzare i ruoli:
.show
database
DatabaseName principal
roles
Altre informazioni sulle convenzioni di sintassi.
Parametri
Nome | Digita | Obbligatorio | Descrizione |
---|---|---|---|
DatabaseName | string |
✔️ | Nome del database per cui elencare le entità. |
Esempio
Il comando seguente elenca tutte le entità di sicurezza che hanno accesso al Samples
database.
.show database Samples principals
Output di esempio
Ruolo | PrincipalType | PrincipalDisplayName | PrincipalObjectId | PrincipalFQN |
---|---|---|---|---|
Amministratore degli esempi di database | Utente di Microsoft Entra | Abbi Atkins | cd709aed-a26c-e3953dec735e | aaduser=abbiatkins@fabrikam.com |
Aggiungere ed eliminare l'associazione di entità ai ruoli di sicurezza
In questa sezione vengono forniti sintassi, parametri ed esempi per l'aggiunta e la rimozione di entità da e verso i ruoli di sicurezza.
Sintassi
Action database
DatabaseName Role (
Principal [,
Principal...] )
[skip-results
] [ Description ]
Altre informazioni sulle convenzioni di sintassi.
Parametri
Nome | Digita | Obbligatorio | Descrizione |
---|---|---|---|
Azione | string |
✔️ | .add Comando , .drop o .set ..add aggiunge le entità specificate, .drop rimuove le entità specificate e .set aggiunge le entità specificate e rimuove tutte le entità precedenti. |
DatabaseName | string |
✔️ | Nome del database per il quale aggiungere entità. |
Ruolo | string |
✔️ | Ruolo da assegnare all'entità. Per i database, i ruoli possono essere admins , users , viewers , unrestrictedviewers , ingestors o monitors . |
Server principale | string |
✔️ | Una o più entità o identità gestite. Per fare riferimento alle identità gestite, usare il formato "App" usando l'ID oggetto identità gestita o l'ID client di identità gestita (applicazione). Per indicazioni su come specificare queste entità, vedere Riferimento a entità e gruppi di Microsoft Entra. |
skip-results |
string |
Se specificato, il comando non restituirà l'elenco aggiornato delle entità di database. | |
Descrizione | string |
Testo per descrivere la modifica visualizzata quando si usa il .show comando . |
Nome | Digita | Obbligatorio | Descrizione |
---|---|---|---|
Azione | string |
✔️ | .add Comando , .drop o .set ..add aggiunge le entità specificate, .drop rimuove le entità specificate e .set aggiunge le entità specificate e rimuove tutte le entità precedenti. |
DatabaseName | string |
✔️ | Nome del database per il quale aggiungere entità. |
Ruolo | string |
✔️ | Ruolo da assegnare all'entità. Per i database, può essere admins , users , viewers unrestrictedviewers , , ingestors o monitors . |
Server principale | string |
✔️ | Una o più entità. Per indicazioni su come specificare queste entità, vedere Riferimento a entità e gruppi di Microsoft Entra. |
skip-results |
string |
Se specificato, il comando non restituirà l'elenco aggiornato delle entità di database. | |
Descrizione | string |
Testo per descrivere la modifica visualizzata quando si usa il .show comando . |
Nota
Il .set
comando con none
anziché un elenco di entità rimuoverà tutte le entità del ruolo specificato.
Esempi
Negli esempi seguenti si vedrà come aggiungere ruoli di sicurezza, rimuovere i ruoli di sicurezza e aggiungere e rimuovere ruoli di sicurezza nello stesso comando.
Aggiungere ruoli di sicurezza con .add
Nell'esempio seguente viene aggiunta un'entità users
al ruolo nel Samples
database.
.add database Samples users ('aaduser=imikeoein@fabrikam.com')
Nell'esempio seguente viene aggiunta un'applicazione al viewers
ruolo nel Samples
database.
.add database Samples viewers ('aadapp=4c7e82bd-6adb-46c3-b413-fdd44834c69b;fabrikam.com')
Rimuovere i ruoli di sicurezza con .drop
Nell'esempio seguente vengono rimosse tutte le entità del gruppo dal admins
ruolo nel Samples
database.
.drop database Samples admins ('aadGroup=SomeGroupEmail@fabrikam.com')
Aggiungere nuovi ruoli di sicurezza e rimuovere il vecchio con .set
Nell'esempio seguente vengono rimosse le entità esistenti viewers
e vengono aggiunte le entità fornite come viewers
nel Samples
database.
.set database Samples viewers ('aaduser=imikeoein@fabrikam.com', 'aaduser=abbiatkins@fabrikam.com')
Rimuovere tutti i ruoli di sicurezza con .set
Il comando seguente rimuove tutti gli elementi esistenti viewers
nel Samples
database.
.set database Samples viewers none