【发布时间】:2022-08-04 19:25:16
【问题描述】:
我有一个包含公司列表的 Azure Synapse SQL 表。
我创建了一个访问矩阵、安全谓词和策略来过滤基于用户呈现的数据。
Create FUNCTION spf.rls_securitypredicate_dimcompany(@Companycode AS nvarchar(50))
RETURNS TABLE
WITH SCHEMABINDING
AS
RETURN SELECT 1 AS tvf_securitypredicate_result
From dwh.dimCompany a
Join spf.AccessMatrix b on a.companycode = b.companycode
Where (a.CompanyCode = @Companycode
and
b.emailaddress = USER_NAME()
)
这很好用,因为当有人对此数据集执行查询时,它只显示与他们的登录相关的数据。 我已将 PowerBI 仪表板发布到共享工作区,并且已根据我的登录而不是查看 PBI 报告的用户应用 RLS。 有没有办法将 RLS 从 Synapse 继承到 PBI,或者我必须在 PBI 中重新创建 RLS 功能?
-
可能。文档列出了Azure SQL 的选项,但当然,Azure SQL 不是 Azure Synapse SQL,尽管名称非常相似。
标签: sql azure powerbi synapse row-level-security