SuperAPI AI 工具集

power-bi-security

安全与审计

查看项目

更新于 10-15 23:42

技能介绍

用途:在 Power BI 语义模型中配置行级安全(RLS)角色与透视(Perspectives),并辅助导出模型做版本控制与审计。主要能力:列出、查看、创建、删除安全角色;列出、创建、删除透视;结合 --json 输出做自动化安全审计;通过 pbi database export-tmdl 导出模型(含角色)用于备份与版本控制。

使用方式(命令保持原样): pipx install pbi-cli-tool pbi-cli skills install pbi connect pbi security-role list pbi security-role get "Regional Manager" pbi security-role create "Regional Manager" --description "Restricts data to user's region" pbi security-role delete "Regional Manager" pbi perspective list pbi perspective create "Sales View" pbi perspective delete "Sales View" pbi --json security-role list pbi database export-tmdl ./model-backup/

常见模式:按区域、部门、经理层级创建角色,随后在模型(TMDL 或 Power BI Desktop)中以 DAX 筛选表达式定义表权限。适用场景:为不同用户群建立访问边界、简化模型字段列表、审计角色配置。

限制与注意:security-role create 只创建角色外壳,表筛选表达式必须经 TMDL 或 Desktop 添加;无筛选表达式的角色在 Service 中显示为已应用但返回全部行,创建后应导出 TMDL 验证 tablePermission。透视仅隐藏字段列表中的对象,用户仍可通过 DAX 查询隐藏表/列;真正的安全应使用 OLS(TMDL 中为 metadataPermissions)。USERPRINCIPALNAME() 在 Desktop 与 Service 返回值可能不同,本地通过的 RLS 可能在 Service 静默失败。RLS 角色在 Service 中映射到 AAD 组而非个人用户。使用用户映射表做动态 RLS 时,映射表未刷新会导致新用户看不到数据且无报错。security-role delete 会原子删除角色及其筛选表达式且无警告,删除前应先导出 TMDL。其余收费、价格、平台细节暂未提供。