La sicurezza a livello di riga con Power BI può essere usata per limitare l'accesso ai dati per determinati utenti. I filtri limitano l'accesso ai dati a livello di riga. È possibile definire i filtri nei ruoli.

È possibile configurare la sicurezza a livello di riga per i modelli di dati importati in Power BI con Power BI Desktop. È anche possibile configurare la sicurezza a livello di riga nei set di dati che usano DirectQuery, ad esempio SQL Server. In precedenza, era possibile implementare la sicurezza a livello di riga solo nei modelli di Analysis Services all'esterno di Power BI. Per le connessioni dinamiche ad Analysis Services è possibile configurare la sicurezza a livello di riga nel modello locale. L'opzione di sicurezza non verrà visualizzata per i set di dati di connessione dinamica.

Definire i ruoli e le regole in Power BI Desktop

È possibile definire i ruoli e le regole in Power BI Desktop. Quando si esegue la pubblicazione in Power BI, verranno pubblicate anche le definizioni dei ruoli.

Per sfruttare i vantaggi della sicurezza dinamica, sarà necessario abilitare l'opzione di anteprima Abilita il filtro incrociato in entrambe le direzioni per DirectQuery. Ciò consentirà di usare il filtro incrociato e di applicare il filtro di sicurezza in entrambe le direzioni.

Per definire i ruoli di sicurezza, seguire questa procedura.

  1. Importare dati nel report di Power BI Desktop o configurare una connessione DirectQuery.

    Nota:

    Non è possibile definire i ruoli in Power BI Desktop per connessioni dinamiche di Analysis Services. Sarà necessario eseguire questa operazione nel modello di Analysis Services.

  2. Selezionare la scheda Creazione di modelli.

  3. Selezionare Gestisci ruoli.

  4. Selezionare Crea.

  5. Specificare un nome per il ruolo.

  6. Selezionare la tabella a cui si vuole applicare una regola DAX.

  7. Immettere le espressioni DAX. Questa espressione deve restituire true o false. Ad esempio: [Entity ID] = "Valore".

    Nota:

    È possibile usare username() in questa espressione. Occorre notare che username() avrà il formato DOMINIO\nomeutente in Power BI Desktop. Nel servizio Power BI avrà il formato del valore UPN dell'utente. In alternativa, è possibile usare userprincipalname(), che restituirà sempre l'utente nel formato nome dell'entità utente.

  8. Dopo la creazione dell'espressione DAX, è possibile selezionare il segno di spunta sopra la casella dell'espressione per convalidare l'espressione.

  9. Selezionare Salva.

Non è possibile assegnare gli utenti a un ruolo in Power BI Desktop. Questa operazione viene eseguita nel servizio Power BI. È possibile abilitare la sicurezza dinamica in Power BI Desktop usando le funzioni DAX username() o userprincipalname() e configurando le relazioni appropriate.

Convalida del ruolo all'interno di Power BI Desktop

Dopo aver creato il ruolo, è possibile testare i risultati del ruolo all'interno di Power BI Desktop. A tale scopo, selezionare Visualizza come ruoli.

La finestra di dialogo Visualizza come ruoli consente di modificare la visualizzazione dei dati in base all'utente o al ruolo specifico. Verranno visualizzati i ruoli creati.

Selezionare il ruolo creato e quindi scegliere OK per applicarlo ai dati visualizzati. I report eseguiranno il rendering solo dei dati pertinenti a tale ruolo.

È anche possibile selezionare Altro utente e indicare un determinato utente. È consigliabile fornire il nome dell'entità utente (UPN), cioè quello che verrà usato dal servizio Power BI. Selezionare OK in modo che i report eseguano il rendering in base ai dati visibili all'utente.

Nota:

All'interno di Power BI Desktop verranno visualizzati risultati differenti solo se si usa la sicurezza dinamica basata sulle espressioni DAX.

Gestire la sicurezza nel modello

Per gestire la sicurezza nel modello di dati, si dovranno eseguire le operazioni seguenti.

  1. Selezionare i puntini di sospensione (…) accanto a un set di dati.
  2. Selezionare Sicurezza.

Verrà visualizzata la pagina della sicurezza a livello di riga per aggiungere membri a un ruolo che è stato creato in Power BI Desktop. Solo i proprietari del set di dati potranno visualizzare l'opzione Sicurezza. Se il set di dati è in un gruppo, l'opzione di sicurezza sarà visibile solo per gli amministratori del gruppo.

È possibile creare o modificare i ruoli solo all'interno di Power BI Desktop.

Utilizzo dei membri

Aggiungere membri

È possibile aggiungere un membro al ruolo digitando l'indirizzo di posta elettronica, o il nome, dell'utente, del gruppo di sicurezza o della lista di distribuzione da aggiungere. Il membro deve essere interno all'organizzazione. Non è possibile aggiungere gruppi creati all'interno di Power BI.

È anche possibile stabilire il numero di membri che fanno parte del ruolo in base al numero indicato tra parentesi accanto al nome del ruolo o accanto a Membri.

Rimuovere i membri

È possibile rimuovere i membri selezionando l'icona X accanto al nome.

Convalida del ruolo all'interno del servizio Power BI

È possibile convalidare il corretto funzionamento del ruolo definito testandolo.

  1. Selezionare i puntini di sospensione (…) accanto al ruolo.
  2. Selezionare Test dei dati come ruolo

Verranno visualizzati i report disponibili per questo ruolo. I dashboard non vengono presentati in questa visualizzazione. La barra blu sopra indica cosa viene applicato.

È possibile testare altri ruoli, o combinazioni di ruoli, selezionando Visualizzazione attuale come.

È possibile scegliere di visualizzare i dati come un utente specifico oppure è possibile selezionare una combinazione dei ruoli disponibili per convalidarne il funzionamento.

Per tornare alla visualizzazione normale, selezionare Torna alla sicurezza a livello di riga.

Uso della funzione DAX username() o userprincipalname()

È possibile sfruttare la funzione DAX username() o userprincipalname() all'interno del set di dati. Queste funzioni possono essere usate all'interno di espressioni in Power BI Desktop. Quando si pubblica il modello, verrà usata all'interno del servizio Power BI.

All'interno di Power BI Desktop, username() restituirà un utente nel formato DOMINIO\utente, mentre userprincipalname() restituirà un utente nel formato user@contoso.com.

All'interno del servizio Power BI, username() e userprincipalname() restituiranno il nome dell'entità utente (UPN, User Principal Name). simile a un indirizzo di posta elettronica.

Usare la sicurezza a livello di riga con le aree di lavoro per le app in Power BI

Se si pubblica il report di Power BI Desktop in un'area di lavoro per le app all'interno del servizio Power BI, i ruoli verranno applicati ai membri di sola lettura. È necessario indicare che i membri possono visualizzare il contenuto di Power BI solo entro le impostazioni dell'area di lavoro per le app.

Avviso:

Se è stata configurata l'area di lavoro per le app in modo da assegnare le autorizzazioni di modifica ai membri, i ruoli di sicurezza a livello di riga non verranno applicati. Gli utenti riusciranno a visualizzare tutti i dati.

Limitazioni

Di seguito è riportato un elenco delle limitazioni correnti per la sicurezza a livello di riga nei modelli cloud.

  • Se in precedenza sono stati definiti ruoli/regole all'interno del servizio Power BI, sarà necessario crearli di nuovo all'interno di Power BI Desktop.
  • È possibile definire la sicurezza a livello di riga solo per i set di dati creati con il client Power BI Desktop. Se si vuole abilitare la sicurezza a livello di riga per i set di dati creati con Excel, sarà necessario convertire prima di tutto i file in file PBIX. Altre informazioni
  • Sono supportate solo le connessioni ETL e DirectQuery. Le connessioni dinamiche ad Analysis Services vengono gestite nel modello locale.
  • Al momento le funzionalità Domande e risposte e Cortana non sono supportate con la sicurezza a livello di riga. La casella di input Domande e risposte non verrà visualizzata per i dashboard se è stata configurata la sicurezza a livello di riga per tutti i modelli. È una funzionalità prevista, anche se non è ancora disponibile una data precisa.
  • La condivisione esterna non è al momento supportata con i set di dati che usano la sicurezza a livello di riga.
  • Per un determinato modello, il numero massimo di entità di Azure AD, ovvero i singoli utenti o i gruppi di sicurezza, che possono essere assegnati ai ruoli di sicurezza è 1.000. Per assegnare un numero elevato di utenti ai ruoli, assicurarsi di assegnare i gruppi di sicurezza e non i singoli utenti.

Problemi noti

Esiste un problema noto per cui si riceve un messaggio di errore quando si prova a pubblicare da Power BI Desktop un set di dati che è già stato pubblicato in precedenza. Lo scenario è come indicato di seguito.

  1. Anna ha un set di dati che viene pubblicato nel servizio Power BI e per cui è configurata la sicurezza a livello di riga.

  2. Anna aggiorna il report in Power BI Desktop e pubblica nuovamente il set di dati.

  3. Anna riceve un errore.

Soluzione alternativa: pubblicare nuovamente il file di Power BI Desktop dal servizio Power BI finché non viene risolto il problema. A tale scopo, selezionare Recupera dati > File.

DOMANDE FREQUENTI

Domanda: Cosa accade se sono stati precedentemente creati ruoli/regole per un set di dati nel servizio Power BI? Continueranno a funzionare anche se non si esegue alcuna operazione? Risposta: No. Il rendering degli oggetti visivi non verrà eseguito correttamente. Sarà necessario creare di nuovo i ruoli e/o le regole all'interno di Power BI Desktop e quindi pubblicarli nel servizio Power BI.

Domanda: È possibile creare questi ruoli per le origini dati di Analysis Services? Risposta: È possibile solo se i dati sono stati importati in Power BI Desktop. Se si usa una connessione dinamica, non sarà possibile configurare la sicurezza a livello di riga all'interno del servizio Power BI. Ciò viene definito all'interno del modello di Analysis Services in locale.

Passaggi successivi

Sicurezza a livello di riga con Power BI Desktop

Altre domande? Provare a rivolgersi alla community di Power BI