Power BI 數(shù)據(jù)脫敏

場(chǎng)景1 模糊其他人的銷售數(shù)據(jù),但能看自己以及集體的真實(shí)數(shù)據(jù),并顯示排名

最終樣式:


image.png

實(shí)現(xiàn)1

1)構(gòu)建權(quán)限表


image.png

2)度量值
①先判斷是否需要隱藏?cái)?shù)據(jù)

Measure.IsMask = 
--是否有所有的權(quán)限
VAR ifAllAccess =
    IF (
        CONTAINS (
            MaskControlTable,
            MaskControlTable[User to check], USERPRINCIPALNAME(),
            MaskControlTable[view salesman], "All"
        ),
        TRUE (),
        FALSE ()
    )
--是否具有權(quán)限
VAR ifHasAccess =
    IF (
        CONTAINS ( MaskControlTable, MaskControlTable[User to check], USERPRINCIPALNAME() ,
        MaskControlTable[view salesman],SELECTEDVALUE(Sheet1[Salesman])
        ),
        TRUE (),
        FALSE ()
    )
--顯示小計(jì)數(shù)據(jù)
VAR  totalVisible = COUNTROWS(DISTINCT(Sheet1[Salesman])) >2
RETURN
    IF ( ifAllAccess || ifHasAccess || totalVisible, FALSE (), TRUE () )

②根據(jù)上述判斷,返回脫敏前/后的數(shù)據(jù)情況

Measure.Sales.Mask = IF([Measure.IsMask],"*",[Measure.sales])

Measure.Rank.Mask = IF([Measure.IsMask],"*",[Measure.Rank]) 

3)替換可視化對(duì)象中的measure并檢驗(yàn)
之后可視化對(duì)象中的measure換成mask后的measure即可。

以其他身份查看檢驗(yàn):


image.png

image.png

image.png

脫敏前后,數(shù)據(jù)一致。

場(chǎng)景2 造假數(shù)據(jù),比如姓名為USER1、2等,薪資為隨機(jī)數(shù)字

1)構(gòu)建假數(shù)據(jù)列
eg.在PQ中構(gòu)建了假的姓名列


image.png

并且再構(gòu)造一個(gè)假的工資列(隨機(jī)數(shù))
先插入索引(?上一個(gè)步驟必須是索引,否則隨機(jī)數(shù)是同一個(gè)數(shù)字)
然后添加自定義列如圖


image.png

image.png

然后再添加一次索引,再刪除上述過(guò)程中產(chǎn)生的索引列
(上述步驟也可以在pbi里做,不在pq里做)

2)應(yīng)用后,在dax里面應(yīng)用假數(shù)據(jù)列,并隱藏真實(shí)數(shù)據(jù)列


image.png

效果圖
其中Current User列動(dòng)態(tài)獲取,其他兩列就是剛造的假數(shù)據(jù)
Current User =
VAR RealName =
    SELECTEDVALUE ( Dim_Employee_Salesman[SalesMan] )
VAR LoggingName =
    USERPRINCIPALNAME ()
VAR MaskName =
    SELECTEDVALUE ( Dim_Employee_Salesman[Masked Sales] )
RETURN
    IF ( LoggingName = RealName, RealName, BLANK () )

顏色的話:

Current User.color = IF(NOT(ISBLANK([Current User])),"#FFFF00")

然后再各列應(yīng)用一下即可


image.png

image.png

其他待嘗試:
將數(shù)據(jù)脫敏與組織層級(jí)結(jié)構(gòu)結(jié)合起來(lái)

參考這個(gè)記錄
http://www.itdecent.cn/p/5ba3efeb3b91
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容