PowerBI 动态行级安全在服务中不起作用

问题描述

我在 powerbi 应用程序中创建并测试了一个规则,该规则在“查看方式”中运行良好,但是当我使用该规则发布我的数据集时,服务中的报告不起作用。

我不确定这是否与我是该项目的管理员并使用我自己的电子邮件来测试过滤有关(尽管这在应用程序中不是问题)。有什么想法吗?我意识到这可能很模糊。我的组织对 PBI 还很陌生。

Var CompanyPCC = CALculaTETABLE (
        VALUES ( 'User Access'[PCC]),FILTER ( 'User Access','User Access'[Login] = USERPRINCIPALNAME()  )
    )
RETURN 
OR(
"ALL" IN CompanyPCC,PATHCONTAINS(CompanyPCC,'Company'[Company PCC])
)
&& 

Var Country= CALculaTETABLE (
        VALUES ( 'User Access'[Country] ),'User Access'[Login] = USERPRINCIPALNAME()  )
    )
RETURN 
OR(
"ALL" IN Country,PATHCONTAINS(Country,'Company'[Company Profile Country])
)
&&

Var Brand= CALculaTETABLE (
        VALUES ( 'User Access'[Brand] ),'User Access'[Login] = USERPRINCIPALNAME()  )
    )
RETURN 
OR(
"ALL" IN Brand,PATHCONTAINS(Brand,'Company'[Company Brand])
)

解决方法

要使 RLS 工作,用户需要在工作区中拥有只读权限。默认情况下,成员或管理员可以看到所有内容。见:

https://docs.microsoft.com/en-us/power-bi/admin/service-admin-rls#using-rls-with-workspaces-in-power-bi