Power BI中不使用RLS实现用户仅查看自身关联数据的方案咨询
无需RLS的Power BI数据行级权限实现方案
这里提供几个不用行级安全性(RLS)就能实现用户仅查看自身关联数据的方案:
方案1:利用Power BI服务的共享筛选功能
- 打开目标报表,点击右上角的共享按钮
- 进入共享窗口后,展开高级选项,勾选为接收者筛选报表
- 设置筛选规则:选择
UsersData表的Username字段,匹配条件设为等于当前用户(Power BI会自动识别登录用户的用户名) - 完成共享后,用户只能看到和自己用户名绑定的
Country对应的Country名称与CityName数据
方案2:用Power Query动态筛选当前用户数据
- 打开Power Query编辑器,找到
UsersData表的查询 - 添加自定义筛选步骤,输入以下M代码:
= Table.SelectRows(UsersData, each [Username] = Text.From(Environment.UserName)) - 刷新数据后,
UsersData只会保留当前登录用户的记录,关联的CountryData也会自动同步显示对应的数据 - 注意:要确保用户的系统用户名和
UsersData表中的Username字段完全一致,否则筛选会失效
方案3:参数化报表+专属URL分发
- 在Power BI Desktop中创建一个文本参数
TargetUsername,允许手动输入值 - 给报表中的表格视觉对象添加筛选器:
UsersData[Username]等于TargetUsername参数 - 发布到Power BI服务后,生成带参数的专属URL(格式示例:
https://app.powerbi.com/groups/xxx/reports/xxx/ReportSection?filter=UsersData/Username eq '用户名') - 给每个用户分发对应的URL,他们打开后只能看到自己关联的数据
内容的提问来源于stack exchange,提问作者Ramesh Madhubhashitha
相关产品推荐
相关产品推荐

