You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Power BI 基于用户身份实现列级访问权限设置咨询

Power BI 不同用户可见不同列的安全配置方案

本需求为典型的列级别权限控制场景,无需使用过滤器,通过Power BI原生的**对象级安全性(OLS, Object Level Security)**即可实现,具体操作步骤如下:

前置说明

对象级安全性是Power BI数据集层面的安全控制能力,配置后会直接对用户可见的列/表范围生效,不会影响报告的视觉对象逻辑,完全符合你的需求。

操作步骤

步骤1:在Power BI Desktop创建自定义角色

  • 打开报告文件,点击顶部菜单栏「建模」选项卡,选择「管理角色」
  • 新建2个自定义角色:
    • 受限列访问角色:对应ANTHONY的访问权限
    • 全列访问角色:对应CHARLES的访问权限

步骤2:配置角色的列可见权限

在「管理角色」面板的表结构列表中,找到存放COLUMN1、COLUMN2、COLUMN3的业务表:

  • 针对受限列访问角色:勾选COLUMN2、COLUMN3后方的「隐藏」选项,仅保留COLUMN1可见
  • 针对全列访问角色:不对该表的任何列设置隐藏规则,保留全部三列可见
  • 配置完成后点击「保存」

步骤3:发布报告并在服务端分配角色成员

  • 将配置完成的报告发布到对应Power BI工作区
  • 进入工作区的「数据集」列表,找到对应数据集,点击「更多选项」>「安全性」
  • 在角色管理页分别给两个角色添加成员:
    • 将ANTHONY@BUSINESS.COM添加到受限列访问角色的成员列表
    • 将CHARLES@BUSINESS.COM添加到全列访问角色的成员列表
  • 点击「保存」完成配置

步骤4:验证权限效果

分别使用两个账号访问Power BI应用内的报告:

  • ANTHONY登录时,矩阵视觉对象仅会展示COLUMN1,COLUMN2、COLUMN3默认完全隐藏
  • CHARLES登录时,矩阵会正常展示全部三列数据

拓展优化方案

如果你后续需要管理的用户数量较多,不想手动创建大量角色,可以通过Tabular Editor工具配置动态对象级安全性,通过DAX表达式USERPRINCIPALNAME()匹配预先导入的用户-权限映射表,自动判断当前登录用户的可见列范围,无需逐个创建静态角色。


内容的提问来源于stack exchange,提问作者margo1395

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.28 17:54:00