OneLake 数据访问角色入门(预览)

概述

OneLake 文件夹数据访问角色是一项新功能,可用于将基于角色的访问控制 (RBAC) 应用于 OneLake 中存储的数据。 你可以定义安全角色,授予对 Fabric 项中特定文件夹的读取访问权限,并将其分配给用户或组。 访问权限决定了用户通过湖屋 UX、笔记本或 OneLake API 访问数据湖视图时看到的文件夹。

具有管理员、成员或参与者角色的 Fabric 用户可以从创建 OneLake 数据访问角色开始,仅授予对湖屋中特定文件夹的访问权限。 若要授予对湖屋中数据的访问权限,请将用户添加到数据访问角色。 不属于数据访问角色的用户在此湖屋中看不到任何数据。

注意

数据访问角色安全性仅适用于直接访问 OneLake 的用户。 SQL 分析终结点、语义模型和仓库等 Fabric 项有自己的安全模型,通过委派身份访问 OneLake。 这意味着,如果用户有权访问多个项,则可以在每个工作负载中看到不同的项。

如何选择加入

Fabric 中的所有湖屋默认禁用数据访问角色预览功能。 预览功能是按湖屋配置的。 选择加入的控制允许单个湖屋试用预览功能,而无需在任何其他湖屋或 Fabric 项上启用它。

若要启用预览,你必须是工作区的管理员、成员或参与者。 导航到湖屋,然后选择功能区中的“管理 OneLake 数据访问(预览)”按钮以打开确认对话框。 数据访问角色预览与外部数据共享预览不兼容。 如果同意更改,请选择“继续”。 管理角色 UX 将会打开,该功能现已启用。

预览功能一旦启用就无法关闭。

为确保流畅的选择加入体验,对湖屋中的数据拥有读取权限的所有用户继续拥有读取权限。 迁移访问权限是通过创建名为“DefaultReader”的默认数据访问角色来完成的。使用虚拟化角色成员身份时,有权查看湖屋(ReadAll 权限)中的数据的所有用户都将作为此默认角色的成员包含在内。 若要开始限制这些用户的访问,请确保删除 DefaultReader 角色或删除访问用户的 ReadAll 权限。

重要

确保数据访问角色中包含的任何用户都不属于 DefaultReader 角色。 否则,他们将保持对数据的完全访问权限。

哪些类型的数据可以得到保护?

OneLake 数据访问角色可用于管理 OneLake 对湖屋中文件夹的读取访问权限。 可以向湖屋中的任何文件夹授予读取访问权限,默认状态是无权访问文件夹。 数据访问角色设置的安全性仅适用于针对 OneLake 或 OneLake 特定 API 的访问。 有关更多信息,请参阅数据访问控制模型

先决条件

若要为湖屋配置安全性,你必须是工作区的管理员、成员或参与者。 角色创建和成员资格分配会在保存角色后立即生效,因此请确保在将某人添加到角色之前授予访问权限。

OneLake 数据访问角色仅支持湖屋项。

创建角色

  1. 打开要在其中定义安全性的湖屋。
  2. 在湖屋功能区右侧,选择“管理 OneLake 数据访问(预览版)”。
  3. 在“管理 OneLake 数据访问”窗格的左上角,选择“新建角色”,然后键入所需的角色名称。 角色名称具有某些限制:
    1. 角色名称只能包含字母数字字符。
    2. 角色名称必须以字母开头。
    3. 名称区分大小写,且必须唯一。
    4. 名称最大长度为 128 个字符。
  4. 如果希望将此角色应用于此湖屋中的所有文件夹,请选择“所有文件夹”切换按钮。
    1. 此选择包括将来添加的任何文件夹。
  5. 如果希望只将此角色应用于所选文件夹,请选择“所选文件夹”。
    1. 选中要向其应用角色的文件夹旁边的框。
    2. 角色授予对文件夹的访问权限。 若要允许用户访问文件夹,请选中该文件夹旁边的框。 如果用户不应看到文件夹,则请不要选中该框。
    3. 在左下角,选择“保存”以创建角色。
  6. 在左上角,选择“分配角色”以打开角色成员资格窗格。
  7. 将人员、组或电子邮件地址添加到“添加人员或组”控件。 有关更多信息,请参阅分配成员或组
  8. 选择“添加”,将选择移至“分配的用户”列表。 选择“添加”不会保存你的选择。
  9. 选择“保存”并等待角色成功发布的通知。
  10. 选择右上角的“X”以退出窗格。

编辑角色

  1. 打开要在其中定义安全性的湖屋。
  2. 在湖屋功能区右侧,选择“管理 OneLake 数据访问(预览)”。
  3. 在“管理 OneLake 数据访问”窗格中,将鼠标悬停在要编辑的角色上,然后选择它。
  4. 可以通过选中或取消选中每个文件夹旁边的复选框,来更改要向其授予访问权限的文件夹。
  5. 若要更改人员,请选择“分配角色”。 有关更多信息,请参阅分配成员或组
  6. 若要添加更多人员,请在“添加人员或组”框中键入姓名,然后选择“添加”。
  7. 若要删除人员,请在“分配的用户”下选择其姓名,然后选择“删除”。
  8. 选择“保存”并等待角色成功发布的通知。
  9. 选择右上角的“X”以退出窗格。

删除角色

  1. 打开要在其中定义安全性的湖屋。
  2. 在湖屋功能区右侧,选择“管理 OneLake 数据访问(预览)”。
  3. 在“管理 OneLake 数据访问”窗格中,选中要删除的角色旁边的框。
  4. 选择“删除”并等待角色成功删除的通知。
  5. 选择右上角的“X”以退出窗格。

分配成员或组

对于将用户添加到角色,OneLake 数据访问角色支持两种不同的方法。 主要方法是使用“分配角色”页上的“添加人员或组”框将用户或组直接添加到角色。 第二种方法是使用虚拟成员资格以及“基于 Lakehouse 权限添加用户”控件。

使用“添加人员或组”框将用户直接添加到角色,会将用户添加为角色的显式成员。 这些用户在“已分配的人员和组”列表中显示其姓名和图片。

虚拟成员允许根据用户的 Fabric 项权限动态调整角色的成员资格。 选中“基于 Lakehouse 权限添加用户”框并选择权限,可以将 Fabric 工作区中具有所有选定权限的任何用户添加为该角色的隐式成员。 例如,如果选择 ReadAll、Write,则 Fabric 工作区中对项具有 ReadAll 和 Write 权限的任何用户都将作为该角色的成员包含在内。 通过在“分配的用户”列表中的“分配依据”列下查找值“Lakehouse 权限”,可以看到哪些用户被添加为虚拟成员。 这些成员不能手动删除,需要撤销其相应的 Fabric 权限才能取消分配。

无论哪种成员资格类型,数据访问角色都支持添加个人用户、Microsoft Entra 组和安全主体。

分配成员

若要访问“分配成员”页,有两种方法:

方法 1

  1. 选择要为其分配成员的角色的名称。
  2. 在角色详细信息页面顶部,选择“角色分配”。

方法 2

  1. 从角色列表中,选择要为其分配成员的角色旁边的复选框。
  2. 选择分配

直接分配用户

在“分配角色”页中,可通过在“添加人员或组”框中键入姓名或电子邮件地址,来添加成员或组。 选择要包含该用户的结果。 可以对任意多个用户重复这一步骤。 如果选错了用户,可以选择其条目旁边的 X 将其从框中删除,或选择“清除”以删除所有条目。 完成后,选择“添加”以将所选用户移至访问列表。 将其添加到列表中还不会保存。 添加这些用户后,这是角色成员资格列表的预览,新添加的用户将在其姓名旁边有一个指示器。

若要发布访问更改,请选择窗格底部的“保存”。

分配虚拟成员

若要添加虚拟成员,请使用“基于 Lakehouse 权限添加用户”框。 选中此框以打开下拉列表选取器,选择要虚拟化的 Fabric 权限。 如果用户拥有所有选中的权限,则会被虚拟化。

可用于虚拟化的权限包括:

  • 读取
  • 重新共享
  • 执行
  • ReadAll

选择权限后,选择“添加”以使用更改更新“分配的用户”列表。 用户姓名旁边有文本,指示他们是由湖屋权限分配的。 无法从角色分配中手动删除这些用户。 相反,请从“基于 Lakehouse 权限添加用户”控件中删除相应的权限,或删除 Fabric 权限。

已知问题

外部数据共享预览版功能与数据访问角色预览版不兼容。 在湖屋上启用数据访问角色预览时,任何现有的外部数据共享都可能会停止工作。