控制对数据市场的访问

本文介绍对数据市场的访问控制,包括行级别安全性、Power BI Desktop 中的规则,以及无法访问数据市场或数据市场不可用的原因。

工作区角色

将用户分配到各种工作区角色可提供与数据市场相关的以下功能:

工作区角色 说明
管理员 向用户授予权限,使其能够通过数据流引入数据、编写 SQL 和视觉对象查询,以及更新模型或语义模型(创建关系、创建度量值等)
成员 向用户授予权限,使其能够通过数据流引入数据、编写 SQL 和视觉对象查询,以及更新模型或语义模型(创建关系、创建度量值等)
参与者 向用户授予权限,使其能够通过数据流引入数据、编写 SQL 和视觉对象查询,以及更新模型或语义模型(创建关系、创建度量值等)
查看者 授予用户编写 SQL 和视觉对象查询的权限,并在只读模式下访问“模型视图”。 有关详细信息,请参阅查看者限制

查看者限制

与其他工作区角色相比,查看者角色是一个更有限的角色。 除了向查看者授予的 SQL 权限更少外,还有更多受限的操作。

功能 限制
设置 查看者具有只读访问权限,因此无法重命名 Datamart、添加说明或更改敏感度标签。
模型视图 查看者在模型视图中具有只读模式。
运行查询 除非专门授予,否则查看者没有完整的 DML/DDL 功能。 查看者可以使用 SQL 查询编辑器中的 SELECT 语句读取数据,并使用可视化查询编辑器工具栏中的所有工具。 查看者还可以从 Power BI Desktop 和其他 SQL 客户端工具读取数据。
在 Excel 中分析 查看者无权在 Excel 中分析。
手动更新语义模型 查看者无法手动更新 Datamart 连接到的默认语义模型。
新建度量值 查看者无权创建度量值。
世系视图 查看者无权读取世系视图图表。
共享/管理权限 查看者无权与他人共享数据市场。
创建报告 查看者无权在工作区中创建内容,因此无法在 Datamart 的基础上生成报表。

行级别安全性

行级别安全性 (RLS) 可用于限制指定用户对数据市场的数据访问。 筛选器限制行级别的数据访问,你可以定义角色中的筛选器。 在 Power BI 服务中,工作区的成员可以访问工作区中的数据市场,而 RLS 不会限制此类数据访问。

可以在“数据市场编辑器”中为数据市场配置 RLS。 数据市场上配置的 RLS 会自动应用于下游项,包括自动生成的语义模型和报表。

注意

数据市场使用增强的行级别安全编辑器,这意味着并非所有在 Power BI 中支持的行级别安全筛选器都可以定义。 限制包括目前只能使用 DAX 定义的表达式,包括 USERNAME() 或 USERPRINCIPALNAME() 等动态规则。 要使用这些筛选器定义角色,请切换为使用 DAX 编辑器。

为 Datamarts 定义行级别安全性 (RLS) 角色和规则

要定义 RLS 角色,请执行以下步骤:

  1. 打开数据市场并从功能区中选择“管理角色”。 “管理角色”功能区按钮的屏幕截图。

  2. 使用“行安全设置”窗口创建新的 RLS 角色。 可以在表上定义筛选器组合并选择“保存”以保存角色。 “行安全设置”窗口的屏幕截图。

  3. 保存角色后,选择“分配”将用户添加到角色。 分配后,选择“保存”以保存角色分配并关闭 RLS 设置模式。 行安全设置选择的屏幕截图。

要验证创建的角色,请执行以下步骤:

  1. 从功能区中选择“查看方式”按钮。 “查看方式”功能区按钮的屏幕截图。

  2. 通过选中角色的复选框来选择要验证的角色,然后选择“确定”。 “以角色身份管理视图”窗口的屏幕截图。

  3. 数据视图会显示所选角色具有的访问权限。 查看方式结果的屏幕截图。

要恢复访问权限,请再次选择功能区上的“查看方式”按钮,然后选择“无”。

“以角色身份查看”窗口的屏幕截图,其中选择了“无”。

数据市场不可用的情况

发生以下情况之一时,数据市场可能会标记为不可用的数据市场。

情况 1:当高级工作区从高级更改为非高级时,该工作区中的所有数据市场都变得不可用。 数据市场编辑器将不可用,数据市场和自动生成的语义模型的下游使用将遭到阻止。 用户或管理员必须将工作区升级到其原始高级容量才能还原数据市场。

情况 2:当数据流更新数据市场及其关联的语义模型,但由于系统锁定数据市场或语义模型更新处于挂起状态时,数据市场将不可用。 当数据市场为不可用状态时,便无法访问数据市场编辑器。 下图所示的“重试”操作使用户能够触发数据流、数据市场和语义模型之间的同步。 完成请求的操作可能需要几分钟时间,但可以继续下游消耗。

“请求访问权限”设置的屏幕截图。

情况 3: 将高级工作区迁移到其他区域中的另一个高级容量时,Datamart 变得不可用,并出现错误:“无法打开 Datamart,因为工作区区域已更改。 若要打开 Datamart,请在创建 Datamart 时将工作区重新连接到连接的区域。此行为是设计造成的,因为创建 Datamarts 的区域必须是工作区所在的区域,并且不支持迁移。

本文提供了有关控制对数据市场的访问的信息。

以下文章提供了有关数据市场和 Power BI 的详细信息:

有关数据流和转换数据的详细信息,请参阅以下文章: