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.

5 livelli di autorizzazione
8 tipi di operazioni
3 tipi di ownership

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.
Root Business Unit Sales BU Service BU Team

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:

  1. None Selected: nessun accesso concesso.
  2. User: accesso solo ai propri record.
  3. Business Unit: accesso ai record della propria unità.
  4. Parent: Child Business Units: accesso alla propria unità e alle sottounità.
  5. 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:

  1. Abilitare la sicurezza per la colonna desiderata nel Maker Portal.
  2. Creare un profilo di sicurezza della colonna e definire i permessi di lettura, creazione e modifica.
  3. 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.