You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PowerBI能否继承Azure Synapse SQL中的RLS行级安全?

问题解决:PowerBI继承Azure Synapse RLS配置

问题根源

PowerBI发布到共享工作区后,默认采用发布者的身份凭据连接Synapse,而非传递报表查看者的Azure AD身份,导致Synapse的RLS仅应用发布者的权限规则。

实现PowerBI继承Synapse RLS的配置步骤

  • 启用身份传递(SSO)
    在PowerBI中连接Synapse时,必须使用支持身份传递的模式:

    1. PowerBI Desktop端:选择「Azure Active Directory - 通用」身份验证,勾选「使用单一登录通过Azure AD传递凭据」(仅DirectQuery/Live Connect模式支持该选项)。
    2. 发布到共享工作区后,进入数据集设置,将「数据源凭据」改为「使用单一登录(SSO)通过Azure AD传递凭据」,替换默认的「发布者凭据」。
  • 验证身份与权限匹配

    1. 确保报表查看者的Azure AD账号拥有Synapse SQL池的读取权限(如db_datareader角色),且该账号的邮箱存在于spf.AccessMatrix表中。
    2. 你的RLS函数中使用的USER_NAME()会返回传递过来的查看者邮箱,需保证该值与AccessMatrix表的emailaddress字段匹配。
  • 无需重复配置PowerBI RLS
    只要身份传递配置正确,Synapse的RLS会直接生效,PowerBI将自动获取经过过滤的数据,无需在PowerBI中另行设置行级别安全。

关键注意事项

  • 仅DirectQuery或Live Connect模式支持继承Synapse RLS;若使用导入模式,数据会被缓存到PowerBI,必须在PowerBI内配置RLS。
  • 避免使用服务主体等非用户身份连接数据源,否则会跳过身份传递,导致RLS失效。

内容的提问来源于stack exchange,提问作者user774952

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.25 17:27:26