1

我已经从 github - https://github.com/Microsoft/PowerBI-Developer-Samples下载了 App Owns Data 。我通过添加以下行添加了行级别安全性:

generateTokenRequestParameters =  new GenerateTokenRequest("View", null, 
       identities: new List<EffectiveIdentity>{new EffectiveIdentity(username: "username", roles: new List<string> { "Role A"}, datasets: new List<string> { report.DatasetId })});

目前,我一次只能添加一个用户名。有什么方法可以让我使用多个用户并为他们分配不同的角色?任何帮助表示赞赏!

4

2 回答 2

1

您需要通过在 power bi desktop 中添加角色来添加行级安全性 -

  1. 建模 => 管理角色
  2. 创造
  3. 为您的角色命名,例如角色 A
  4. 在要过滤的表格下选择一个表格
  5. 在表过滤器 DAX 表达式中添加 [column_name_here] = USERNAME()
  6. 您传递给 GenerateTokenRequest 的用户名将传递给 USERNAME()

将多个用户名添加到 GenerateTokenRequest 将是反直觉的,因为它旨在为查看嵌入式报告的单个用户生成令牌。

如果您在同一用户的不同表中有不同的用户名,那么您可以创建一个查找表,其中 usernameA 映射到 table1 上的 username1,表 2 上的 username2 等。

如果您可以提供有关您的用例的更多详细信息,我很乐意尝试并提供帮助

于 2018-03-22T17:26:05.413 回答
0

在单个 GenerateTokenRequest 中,您需要传递与传递的数据集数量相同数量的 EffectiveIdentity。这意味着要嵌入仪表板(可能包含具有不同数据集的图块),您将能够使用不同的用户名传递多个 EffectiveIdentity。但是对于报表嵌入(只有一个数据集),您只能传递一个用户名。

于 2018-03-22T13:02:45.233 回答