Dataverse: Sicurezza (RUOLI/BU/Team)
Autorizzazioni, business units, ruoli, team, condivisione e sicurezza a livello di colonna
Scopri come Microsoft Dataverse implementa un modello di sicurezza multilivello per garantire la protezione dei dati, la segregazione dei ruoli e la gestione avanzata dei permessi utente.
Introduzione al modello di sicurezza di Dataverse
Microsoft Dataverse utilizza un modello di sicurezza granulare e gerarchico per controllare l’accesso ai dati e alle funzionalità. Questo modello si basa su business unit, ruoli di sicurezza e team. Ogni utente o team può avere uno o più ruoli che definiscono le autorizzazioni per le tabelle e le operazioni (lettura, scrittura, creazione, eliminazione, assegnazione, condivisione, append, append-to).
La sicurezza è progettata per assicurare che le informazioni sensibili siano accessibili solo alle persone autorizzate. Essa si estende anche alle API, garantendo che gli stessi criteri si applichino indipendentemente dall’interfaccia di accesso.
Business Units: la base gerarchica della sicurezza
Ogni ambiente Dataverse include almeno una business unit radice che rappresenta l’intera organizzazione. È possibile creare ulteriori business unit per riflettere la struttura aziendale, come divisioni o reparti. Gli utenti vengono assegnati a una specifica unità, il che definisce il loro ambito di visibilità e gestione dei dati.
La gerarchia di business unit consente di implementare scenari come:
- Accesso limitato ai dati del reparto.
- Visibilità estesa alle unità figlie (Parent: Child Business Units).
- Gestione centralizzata delle autorizzazioni per team interdipartimentali.
Ruoli di sicurezza e livelli di permesso
I ruoli di sicurezza determinano le azioni che un utente può eseguire in Dataverse. Ogni ruolo contiene un set di permessi per ogni tabella e funzionalità. I livelli di accesso disponibili sono:
- None Selected: nessun accesso concesso.
- User: accesso solo ai propri record.
- Business Unit: accesso ai record della propria unità.
- Parent: Child Business Units: accesso alla propria unità e alle sottounità.
- Organization: accesso a tutti i record dell’organizzazione.
Ogni ruolo conferisce permessi per operazioni specifiche come:
- Create: creare nuovi record.
- Read: leggere i record esistenti.
- Write: modificare i record.
- Delete: eliminare record.
- Append e Append To: collegare record fra tabelle.
- Assign: riassegnare la proprietà di un record.
- Share: condividere record con altri utenti.
Per evitare conflitti, si consiglia di creare ruoli personalizzati invece di modificare quelli predefiniti di sistema. Tale approccio facilita la manutenzione e garantisce compatibilità con gli aggiornamenti della piattaforma.
Team e assegnazione dei ruoli
I team permettono di gestire l’accesso ai dati in modo flessibile. Esistono diversi tipi di team in Dataverse:
- Business Unit-based Teams: creati automaticamente per ogni unità aziendale.
- Custom Owner Teams: creati manualmente, possono possedere record e avere ruoli assegnati.
- Access Teams: ideali per concedere accesso ad hoc a singoli record senza ruoli permanenti.
- AAD Security Group Teams: integrati con Azure AD per assegnare automaticamente permessi a utenti di un gruppo.
Grazie ai team, l’amministratore può assegnare rapidamente ruoli a gruppi di utenti, riducendo la complessità della gestione. L’integrazione con Azure Active Directory consente di sincronizzare i membri e i privilegi in tempo reale.
Un vantaggio dei team di tipo AAD Security Group è la possibilità di gestire le aggiunte e rimozioni di utenti direttamente da Azure AD senza interventi manuali in Dataverse.
Sicurezza a livello di colonna
Dataverse consente di proteggere anche singole colonne di una tabella, utile per gestire dati sensibili come numeri di carte di credito, password o informazioni personali. La column-level security si configura in tre passaggi principali:
- Abilitare la sicurezza per la colonna desiderata nel Maker Portal.
- Creare un profilo di sicurezza della colonna e definire i permessi di lettura, creazione e modifica.
- Aggiungere utenti o team come membri del profilo.
Gli utenti non inclusi nel profilo di sicurezza non vedranno né potranno accedere ai dati protetti, nemmeno tramite API. La sicurezza a livello di colonna assicura quindi una protezione end-to-end.
Condivisione e autorizzazioni granulari
Oltre ai ruoli, Dataverse consente di condividere singoli record con altri utenti o team. La condivisione può includere diritti specifici (lettura, scrittura, eliminazione) e viene gestita a livello di record. Questa funzionalità è utile per scenari collaborativi temporanei o per concedere accesso limitato a consulenti esterni.
È anche possibile automatizzare la condivisione tramite flussi di Power Automate o plug-in, garantendo che le autorizzazioni si adattino dinamicamente al ciclo di vita dei dati.
Domande frequenti sulla sicurezza in Dataverse
Qual è la differenza tra ruoli di sicurezza e profili a livello di colonna?
I ruoli di sicurezza gestiscono l’accesso alle tabelle e ai record, mentre i profili a livello di colonna controllano l’accesso a specifici campi sensibili all’interno di una tabella.
È possibile usare Azure AD per gestire i team Dataverse?
Sì, creando team di tipo AAD Security Group o Office Group è possibile sincronizzare automaticamente i membri e i permessi da Azure Active Directory.
Come si assegna un ruolo a un’app model-driven?
È possibile selezionare i ruoli direttamente dalle impostazioni dell’app model-driven. Solo gli utenti con i ruoli selezionati avranno accesso all’applicazione.