如何對Power BI報告進(jìn)行頁面級權(quán)限控制?(power bi權(quán)限設(shè)置)
平時被經(jīng)常問到的一個問題,就是PowerBI能不能按頁面進(jìn)行權(quán)限控制?比如A用戶只允許查看報告的第2頁,B用戶只能查看第6頁等,PowerBI本身是沒有這個功能的,行級安全性(RLS)也是只能限制數(shù)據(jù)行,并不能按頁面來控制。
不過既然行級別安全性能控制行,我們就利用這個特性,讓每個頁面的名稱作權(quán)限表的行,不同的用戶能看到不同的頁面名稱,然后利用導(dǎo)航跳轉(zhuǎn)到對應(yīng)的頁面,不就可以實現(xiàn)了嗎?這也正是本文頁面級權(quán)限控制方案的基本思路。
運用這個方案需要先熟悉PowerBI的RLS功能,關(guān)于RLS我前面已經(jīng)做了足夠的鋪墊,如果你還不熟悉,請先閱讀這幾篇文章:
利用Power BI行級安全性,限制用戶訪問權(quán)限
Power BI行級安全性三種常見的角色規(guī)則設(shè)置
利用Excel和這個函數(shù),對PowerBI報告進(jìn)行動態(tài)的權(quán)限控制
下面就讓我們開始吧。
以下面這個PowerBI報告為例,正文報告有4個頁面,頁面名稱分別為整體、電腦外設(shè)、手機配件和智能設(shè)備:
1、導(dǎo)入權(quán)限表
首先在Excel中制作一個頁面權(quán)限表:
在權(quán)限表中,張三可以查看電腦外設(shè)頁、手機配件頁;李四只能查看智能設(shè)備頁;王五可以查看所有頁面。
將這個表導(dǎo)入到PowerBI中,并利用PowerQuery的分列功能整理成下面的一維表樣式:
其實你也可以按這個表的格式錄入到Excel權(quán)限表,直接導(dǎo)入使用,不用在PowerQuery中整理了。
2、創(chuàng)建角色
創(chuàng)建一個新的角色"頁面控制",表達(dá)式非常簡單,直接在頁面權(quán)限表添加一個篩選條件:
[賬號] = USERNAME()
3、設(shè)計封面頁
因為是按頁面控制權(quán)限,這個報告中原有的4個頁面不能直接展現(xiàn),要全部隱藏起來,取而代之的是設(shè)計一個封面落地頁,讓用戶先看到該頁,然后再根據(jù)權(quán)限導(dǎo)航到相應(yīng)的頁面,所以,封面頁非常重要。
在封面頁中,利用權(quán)限表中的“頁面權(quán)限”字段,添加一個切片器,這個切片的內(nèi)容來自權(quán)限表,根據(jù)角色規(guī)則,它會隨著不同的登錄賬戶,返回不同的內(nèi)容。
然后在切片旁邊添加一個按鈕:
設(shè)置按鈕的操作屬性:
在【類型】里選擇“頁導(dǎo)航”,【目標(biāo)】里放置一個度量值,它的寫法為:
頁面導(dǎo)航 = SELECTEDVALUE( '頁面權(quán)限表'[頁面權(quán)限] )
這個度量值很簡單,返回當(dāng)前切片器的選項內(nèi)容,但【目標(biāo)】里可以放度量值,這個功能非常關(guān)鍵,可以說是這個解決方案不可或缺的一環(huán),利用它,才可以實現(xiàn)點擊按鈕,導(dǎo)航到切片器所選的那一頁。
至此,所有的關(guān)鍵節(jié)點都已經(jīng)部署完成。
關(guān)于封面頁,既然是每個用戶打開報告第一眼就看到的,要盡量做的高上大,可以找張圖片在PPT中設(shè)計好,作為封面頁的背景,將切片器和導(dǎo)航放置到相應(yīng)的位置上,一個按頁面級權(quán)限控制的報告就設(shè)計好了:
還可以用度量值將當(dāng)前登錄的用戶名顯示出來放到封面上:
當(dāng)前登錄用戶名 = CALCULATE( MAX('頁面權(quán)限表'[用戶名]), '頁面權(quán)限表'[賬號]=USERNAME() )&""
然后將這個報告發(fā)布到相應(yīng)的工作區(qū)中就可以了。
某個夏日的午后,張三喝著咖啡,打開電腦,登錄自己的PowerBI賬戶,查看他負(fù)責(zé)的業(yè)務(wù)進(jìn)展情況:
一切都是那么的自然。
全神貫注的他,渾然不覺此時的李四,也打開了這個報告,看著與他完全不同的內(nèi)容……
同樣,當(dāng)有用戶需要調(diào)整頁面權(quán)限時,只需要在Excel中更改就行了,如果不在權(quán)限列表中的用戶,也打開了這個報告,那么他只能欣賞一下封面,什么都看不了:
這個方案并不復(fù)雜,靈活運用了PowerBI中的常用功能,行級安全性是靈魂,動態(tài)頁導(dǎo)航是關(guān)鍵。
本文介紹有總體思路,也詳細(xì)描述了操作細(xì)節(jié),希望能幫你設(shè)計一個頁面級權(quán)限控制的PowerBI報告。
更多推薦
我的新書《PowerBI商業(yè)數(shù)據(jù)分析》上市了
玩轉(zhuǎn)十三個PowerBI圖表,輕松搞定數(shù)據(jù)可視化
采悟 | PowerBI星球