RLS 在数据集上测试成功但在报告中不起作用

RLS tests succesfully on dataset but does not work in report

我配置了一个非常简单的 powerbi 报告。 我将 excel(一个 table 称为名称)导入到包含两个字段的 powerbi 中:

Name, email

例如:

John Doe, john@doe.com
Jane Doe, jane@doe.com
Johnny Bravo, johnny@doe.com

电子邮件地址与用户用于登录的电子邮件地址相同。 在 PowerBI Desktop 中,我在唯一的 table 上设置了一个名为 'OnlyMyName' 的角色。 表达式是 [email]=USERPRINCIPALNAME()

现在在 PowerBI Desktop 中测试角色时一切正常。我只看到我的名字。输入 Johnny 的电子邮件时,我只能看到 Johnny 的数据。

我在 Powerbi 服务端设置了 RLS。我已将所有用户添加到该角色。

然后我测试以 Jane Doe 身份登录的数据集,我只看到 Jane 的名字。 使用我的登录名测试数据集会显示我的名字。 以 Johnny 身份登录,测试数据集,我只看到 JOhnny。

耶!

但是,当我打开报告时,我看到了所有的名字。不进行过滤。不适合我,不适合 JOe、Jane 或 Johnny。每个人都能看到每个人的数据。

如果我将 [email]=userprincipalname() 替换为 [email]="Johnny Bravo",每个用户在列表中只能看到 Johnny Bravo......

我创建了一个度量 UPN = userprincipalname(),将其放在报告中并且 UPN 与电子邮件相同...那么为什么 userprincipalname() 不起作用?

谢谢你和我一起思考

我刚刚发现,当我将报告发布到应用程序时,应用程序中的过滤有效....

我记得在8个月前的一个项目中,基于RLS的过滤也会在workspaves中发生。这改变了吗?还是发生了其他事情?

好吧,下次我会在应用程序中检查,而不是在工作区中......... RLS 对工作区没有影响