Sicurezza a livello di riga in Server di report di Power BI
La configurazione della sicurezza a livello di riga con Server di report di Power BI può limitare l'accesso ai dati per gli utenti specificati. I filtri limitano l'accesso ai dati a livello di riga ed è possibile definire filtri all'interno dei ruoli. Se si usano le autorizzazioni predefinite in Server di report di Power BI, qualsiasi utente con autorizzazioni di Server di pubblicazione o Gestione contenuto per il report di Power BI può assegnare membri ai ruoli per tale report.
Configurare la sicurezza a livello di riga per i report importati in Power BI con Power BI Desktop. È anche possibile configurare la sicurezza a livello di riga nei report che usano DirectQuery, ad esempio SQL Server. Tenere presente che la sicurezza a livello di riga non viene rispettata se la connessione DirectQuery usa l'autenticazione integrata per i lettori di report. Per le connessioni dinamiche di Analysis Services, configurare la sicurezza a livello di riga nel modello locale. L'opzione di sicurezza non viene visualizzata per i set di dati di connessione dinamica.
Definire ruoli e regole in Power BI Desktop
È possibile definire ruoli e regole in Power BI Desktop. Quando si pubblica in Power BI, si pubblicano anche le definizioni di ruolo.
Per definire i ruoli di sicurezza:
Importare dati nel report di Power BI Desktop o configurare una connessione DirectQuery.
Nota
Non è possibile definire ruoli all'interno di Power BI Desktop per le connessioni dinamiche di Analysis Services. È necessario eseguire questa operazione all'interno del modello di Analysis Services.
Nella scheda Modellazione selezionare Gestisci ruoli.
Nella finestra Gestisci ruoli selezionare Crea.
In Ruoli specificare un nome per il ruolo.
Nota
Non è possibile definire un ruolo con una virgola, ad esempio
London,ParisRole
.In Tabelle selezionare la tabella a cui applicare una regola DAX (Data Analysis Expression).
Nella casella Espressione DAX filtro tabella immettere le espressioni DAX. Questa espressione restituisce un valore true o false. Ad esempio:
[Entity ID] = “Value”
.Nota
È possibile usare username() all'interno di questa espressione. Tenere presente che username() ha il formato DOMAIN\username in Power BI Desktop. All'interno del servizio Power BI e Server di report di Power BI, è nel formato del nome dell'entità utente (UPN) dell'utente. In alternativa, è possibile usare userprincipalname(), che restituisce sempre l'utente nel formato del nome dell'entità utente, username@contoso.com.
Dopo aver creato l'espressione DAX, selezionare il segno di spunta sopra la casella dell'espressione per convalidare l'espressione.
Nota
In questa casella di espressione usare le virgole per separare gli argomenti della funzione DAX anche se si usano impostazioni locali che in genere usano separatori di punto e virgola ,ad esempio francese o tedesco.
Seleziona Salva.
Non è possibile assegnare utenti a un ruolo in Power BI Desktop. Le si assegnano nel servizio Power BI. È possibile abilitare la sicurezza dinamica all'interno di Power BI Desktop usando le funzioni DAX username() o userprincipalname() e configurando le relazioni appropriate.
Filtro incrociato bidirezionale
Per impostazione predefinita, il filtro di sicurezza a livello di riga usa filtri a direzione singola, indipendentemente dal fatto che le relazioni siano impostate su una singola direzione o bidirezionale. È possibile abilitare manualmente il filtro incrociato bidirezionale con la sicurezza a livello di riga.
Selezionare la relazione e selezionare la casella di controllo Applica filtro di sicurezza in entrambe le direzioni .
Selezionare questa casella quando si implementa la sicurezza dinamica a livello di riga in base al nome utente o all'ID di accesso.
Per altre informazioni, vedere Filtro incrociato bidirezionale con DirectQuery in Power BI Desktop e il white paper tecnico Protezione del modello semantico bi tabulare.
Convalidare i ruoli in Power BI Desktop
Dopo aver creato i ruoli, testare i risultati dei ruoli in Power BI Desktop.
Nella scheda Modellazione selezionare Visualizza come.
Viene visualizzata la finestra Visualizza come ruoli , in cui sono visualizzati i ruoli creati.
Selezionare un ruolo creato. Quindi scegliere OK per applicare il ruolo.
Il report esegue il rendering dei dati rilevanti per tale ruolo.
È anche possibile selezionare Altro utente e specificare un determinato utente.
È consigliabile specificare il nome dell'entità utente (UPN) perché questo è il servizio Power BI e Server di report di Power BI usare.
In Power BI Desktop altri utenti visualizzano risultati diversi solo se si usa la sicurezza dinamica in base alle espressioni DAX. In questo caso, è necessario includere il nome utente e il ruolo.
Seleziona OK.
Il rendering del report viene eseguito in base ai filtri di sicurezza a livello di riga che consentono all'utente di visualizzare.
Nota
La funzionalità Visualizza come ruoli non funziona per i modelli DirectQuery con Single Sign-On (SSO) abilitato.
Aggiungere membri ai ruoli
Dopo aver salvato il report in Server di report di Power BI, è possibile gestire la sicurezza e aggiungere o rimuovere membri nel server. Solo gli utenti con autorizzazioni publisher o Content Manager per il report hanno l'opzione di sicurezza a livello di riga disponibile e non disattivata.
Se il report non ha i ruoli necessari, è necessario aprirlo in Power BI Desktop, aggiungere o modificare ruoli, quindi salvarlo di nuovo in Server di report di Power BI.
In Power BI Desktop salvare il report in Server di report di Power BI. È necessario usare la versione di Power BI Desktop per Server di report di Power BI.
Nel servizio report di Power BI selezionare i puntini di sospensione (...) accanto al report.
Selezionare Gestisci>sicurezza a livello di riga.
Nella pagina Sicurezza a livello di riga aggiungere membri a un ruolo creato in Power BI Desktop.
Per aggiungere un membro, selezionare Aggiungi membro.
Immettere l'utente o il gruppo nella casella di testo nel formato Nome utente (DOMINIO\utente) e selezionare i ruoli da assegnare. Il membro deve trovarsi all'interno dell'organizzazione.
A seconda della configurazione di Active Directory, immettere anche il nome dell'entità utente qui. In tal caso, il server di report mostra il nome utente corrispondente nell'elenco.
Fare clic su OK per applicare.
Per rimuovere i membri, selezionare la casella accanto ai relativi nomi e selezionare Elimina. È possibile eliminare più membri alla volta.
username() e userprincipalname()
È possibile sfruttare le funzioni DAX username() o userprincipalname() all'interno del set di dati. È possibile usarle all'interno di espressioni in Power BI Desktop. Quando si pubblica il modello, Server di report di Power BI li usa.
In Power BI Desktop username() restituisce un utente nel formato DOMAIN\User e userprincipalname() restituisce un utente nel formato .user@contoso.com
All'interno di Server di report di Power BI, username() e userprincipalname() restituiscono entrambi il nome dell'entità utente (UPN) dell'utente, che è simile a un indirizzo di posta elettronica.
Se si usa l'autenticazione personalizzata in Server di report di Power BI, restituisce il formato del nome utente configurato per gli utenti.
Considerazioni e limitazioni
Ecco le limitazioni correnti per la sicurezza a livello di riga nei modelli di Power BI.
Gli utenti che avevano report che usano la funzione DAX username() noteranno ora un nuovo comportamento in cui viene restituito l'UPN (User Principal Name) quando si usa DirectQuery con sicurezza integrata. Poiché la sicurezza a livello di riga non viene rispettata in questo scenario, il comportamento in tale scenario rimane invariato.
È possibile definire la sicurezza a livello di riga solo nei set di dati creati con Power BI Desktop. Per abilitare la sicurezza a livello di riga per i set di dati creati con Excel, è prima necessario convertire i file in file di Power BI Desktop (PBIX). Altre informazioni sulla conversione dei file di Excel.
Sono supportate solo le connessioni Extract, Transform, Load (ETL) e DirectQuery con credenziali archiviate. Le connessioni dinamiche ad Analysis Services e alle connessioni DirectQuery che usano l'autenticazione integrata vengono gestite nell'origine dati sottostante.
Se si usa la sicurezza integrata con DirectQuery, gli utenti possono notare:
- La sicurezza a livello di riga è disabilitata e vengono restituiti tutti i dati.
- Gli utenti non possono aggiornare le assegnazioni di ruolo e ricevere un errore nella pagina Gestione della sicurezza a livello di riga.
- Per la funzione nome utente DAX, si continua a ricevere il nome utente come DOMAIN\U edizione Standard R.
Gli autori di report non hanno accesso per visualizzare i dati del report in Server di report di Power BI fino a quando non sono stati assegnati di conseguenza i ruoli dopo il caricamento del report.
Le assegnazioni di ruolo tramite appartenenze ai gruppi sono supportate solo quando la Server di report di Power BI è configurata per l'esecuzione con l'autenticazione NTLM o Kerberos. I server in esecuzione con autenticazione personalizzata o Windows Basic devono essere assegnati in modo esplicito ai ruoli.
Domande frequenti
È possibile creare questi ruoli per le origini dati di Analysis Services?
È possibile importare i dati in Power BI Desktop. Se si usa una connessione dinamica, non è possibile configurare la sicurezza a livello di riga all'interno del servizio Power BI. La sicurezza a livello di riga viene definita all'interno del modello di Analysis Services in locale.
È possibile usare la sicurezza a livello di riga per limitare le colonne o le misure accessibili dagli utenti?
No. Se un utente ha accesso a una determinata riga di dati, può visualizzare tutte le colonne di dati per tale riga.
La sicurezza a livello di riga consente di nascondere i dati dettagliati, ma di concedere l'accesso ai dati riepilogati negli oggetti visivi?
No, è possibile proteggere singole righe di dati, ma gli utenti possono sempre visualizzare i dettagli o i dati riepilogati.
È possibile aggiungere nuovi ruoli in Power BI Desktop se sono già stati assegnati ruoli e membri esistenti?
Sì, se nella Server di report di Power BI sono già stati definiti ruoli e membri esistenti, è possibile ripubblicare il report senza alcun effetto sulle assegnazioni correnti.
Contenuto correlato
Altre domande? Contattare la community di Power BI
Commenti e suggerimenti
https://aka.ms/ContentUserFeedback.
In arrivo: Nel corso del 2024 verranno ritirati i problemi di GitHub come meccanismo di feedback per il contenuto e verranno sostituiti con un nuovo sistema di feedback. Per altre informazioni, vedi:Invia e visualizza il feedback per