访问控制 - Synapse LakeDatabase 和 Serveless SQL 数据库

问题描述 投票:0回答:1

我们公司正在使用 Synapse Link 导出 Dynamic 365 数据。通过突触链接,表会自动在 Synapse LakeDatabase 中创建。

在这些原始表之上,我们希望在将数据集移交给业务用户之前进行一些清理/转换。因此,我们使用 thelake 数据库表在无服务器 SQL 数据库上创建了视图。

现在的问题是向企业用户授予访问权限。看来业务用户需要访问 Azure datalake、Synapse Lake 数据库和 Serveless SQL 数据库才能读取 sql 视图。

目前我已授予以下访问权限: Azure DataLake 容器:通过 ACL 读取和执行访问 SQL 数据库:选择视图上的访问权限 Lake 数据库:数据库的读取访问权限

这里的问题是业务用户可以读取 Lake 数据库中的原始表。但我们希望限制对 Lake 数据库中原始表的访问,并且只授予对 Serveless SQL 数据库中转换视图的访问权限。

有办法实现上面的效果吗?

目前我已授予以下访问权限: Azure DataLake 容器:通过 ACL 读取和执行访问 SQL 数据库:选择视图上的访问权限 Lake 数据库:数据库的读取访问权限

这里的问题是业务用户可以读取 Lake 数据库中的原始表。但我们希望限制对 Lake 数据库中原始表的访问,并且只授予对 Serveless SQL 数据库中转换视图的访问权限。

sql azure-synapse lake
1个回答
0
投票

如果您想限制用户对原始表的访问并授予对视图的访问权限,您可以按照以下步骤操作:

使用以下代码授予视图权限:

GRANT SELECT ON <schema>.<viewName> TO [<userName>];

使用以下代码撤销对原始表的权限:

REVOKE SELECT ON <schema>.<tableName> FROM [<userName>];

那么用户在访问raw表时就会受到限制,如下图:

enter image description here

但是,用户将能够访问该视图,如下所示:

enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.