在 Fabric 数据仓库中实现列级别安全性
适用于:✅SQL 分析终结点和 Microsoft Fabric 中的仓库
Microsoft Fabric 中的列级安全性 (CLS) 让你能够基于这些表的特定授权来控制对表中列的访问。 有关详细信息,请参阅在 Fabric 数据仓库中实现列级别安全性。
本指南介绍在仓库或 SQL 分析终结点中实现列级别安全性的步骤。
先决条件
在开始之前,请确保具有以下各项:
- 具有激活容量或试用容量的 Fabric 工作区。
- 湖屋上的 Fabric 仓库或 SQL 分析终结点。
- 工作区上的管理员、成员或参与者权限,或仓库或 SQL 分析终结点上的提升的权限。
1.连接
- 使用对仓库或 SQL 分析终结点具有提升的访问权限的帐户登录。 (工作区的管理员/成员/参与者角色或仓库或 SQL 分析终结点的控制权限)。
- 打开 Fabric 工作区,并导航到要在其中应用列级别安全性的仓库或 SQL 分析终结点。
2.定义表的列级别访问权限
确定要使用列级别安全性保护的用户/角色和数据表。
使用 GRANT T-SQL 语句和列列表来实现列级别安全性。 为了简化管理,首先将权限分配给角色,而不是使用个人。
-- Grant select to subset of columns of a table GRANT SELECT ON YourSchema.YourTable (Column1, Column2, Column3, Column4, Column5) TO [SomeGroup];
将
YourSchema
替换为架构的名称,将YourTable
替换为目标表的名称。将
SomeGroup
替换为用户/组的名称。将逗号分隔的列列表替换为要向角色授予其访问权限的列。
重复这些步骤,根据需要授予其他表的特定列访问权限。
3.测试列级别访问权限
- 以属于具有关联 GRANT 语句的角色成员的用户身份登录。
- 查询数据库表以验证列级别安全性是否按预期工作。 用户应仅看到他们有权访问的列,并且应该没法访问其他列。 例如:
SELECT * FROM YourSchema.YourTable;
- 用户的类似结果将与使用 Microsoft Entra 身份验证进行数据库访问的其他应用程序一起筛选。 有关详细信息,请参阅 Microsoft Entra 身份验证作为 Microsoft Fabric 中 SQL 身份验证的替代方法。
4.监视和维护列级别安全性
随着安全要求的变化,定期监视和更新列级别安全策略。 跟踪角色分配并确保用户具有适当的访问权限。