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

基于AAD与RBAC实现Power BI访问私有Azure Blob Storage

使用AAD与RBAC实现Power BI访问私有Azure Blob存储的HTML内容

1. 配置AAD和RBAC的步骤

  • 确认存储账户访问层级:确保目标存储账户的访问层级为「私有」,禁止设置为公开访问。
  • 分配RBAC角色到目标主体:
    • 针对Power BI Desktop用户:在Azure门户中找到目标存储账户/容器/具体Blob,进入「访问控制(IAM)」页面,添加角色分配,选择存储Blob数据读取者角色,将权限分配给对应的AAD用户(即使用Power BI Desktop的用户账户)。
    • 针对Power BI Service用户:同样在存储资源的IAM页面,将存储Blob数据读取者角色分配给需要访问仪表板的AAD用户组或单个用户。若需基于工作区托管身份访问,也可为Power BI工作区的托管身份分配该角色,但更推荐直接给终端用户分配,符合最小权限原则。
  • 配置存储账户CORS规则:由于Power BI Service在浏览器环境中访问Blob,需在存储账户的「CORS」设置中添加规则:
    • 允许的来源:https://app.powerbi.com
    • 允许的方法:GET
    • 允许的头部:*(或按需限制)
    • 公开的头部:*
    • 最大年龄:86400

2. Power BI用户所需的具体角色/权限

无需使用管理平面的角色(如存储账户参与者),仅需数据平面的「存储Blob数据读取者」角色。该角色允许用户读取Blob存储中的内容,且可在存储账户、容器或单个Blob级别进行细粒度分配,最小化权限范围。

注意:管理平面的「读取者」角色不具备访问Blob内容的权限,必须分配数据平面的特定角色。

3. Power BI端的特定配置

  • Power BI Desktop:
    • 确保用户使用已分配Blob权限的AAD账户登录Power BI Desktop。
    • 使用支持AAD身份验证的HTML可视化组件(如第三方的「HTML Viewer」视觉对象),配置视觉对象以「当前用户的AAD凭据」访问Blob URL,避免使用固定密钥或SAS令牌。
  • Power BI Service:
    • 在数据集设置中,将「数据源凭据」的身份验证模式设置为「使用当前用户的凭据」,确保用户访问仪表板时,Power BI会传递其AAD身份到Blob存储进行验证。
    • 确认工作区的访问权限已正确分配给目标用户,确保用户能加载仪表板及关联的数据集。

关键注意事项

  • 原生Power BI可视化组件不支持直接显示HTML内容,必须依赖支持AAD身份传递的第三方自定义视觉对象。
  • 若Blob URL包含容器或路径,需确保用户对该容器及路径下的Blob均有「存储Blob数据读取者」权限。
  • 测试时,可在Power BI Desktop中先验证单个Blob URL的访问,再扩展到带筛选器的可视化场景。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.28 05:15:22