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

Power BI嵌入令牌生成失败:用户未授权问题咨询

Power BI Embedded 嵌入问题解答

问题1:报表数据集所在工作区未关联Power BI Embedded容量是否有影响?是否需将数据集发布至Embedded容量?

有直接影响,且必须将数据集所在工作区关联到Power BI Embedded容量。

  • 嵌入报表时,报表及其依赖的数据集都需要运行在Embedded容量上,否则Service Principal无法获取足够权限生成嵌入令牌。
  • 即使给了数据集所在独立工作区的Contributor权限,由于该工作区未关联容量,会导致令牌生成时出现授权错误。
  • 解决方式:将数据集移动到已关联Embedded容量的报表所在工作区,或者将数据集所在的独立工作区关联到同一Embedded容量。

问题2:数据集无RLS角色是否意味着请求无需身份信息?如何无需指定用户身份且无需用户登录即可嵌入报表?

即使无RLS,生成嵌入令牌时仍需指定身份信息。要实现无需用户登录的嵌入,需采用App Owns Data模式:

  • 调用Reports - GenerateTokenInGroup API时,在请求体中设置identity字段为{"type": "App"},以Service Principal的身份生成令牌,无需传递终端用户信息。
  • 这种模式下,报表会以Service Principal的权限展示数据(无RLS则显示全部数据),终端用户无需登录Power BI即可查看嵌入的报表。

问题3:成功嵌入报表还缺少哪些步骤?

结合你的当前配置,还需完成以下步骤:

  1. 统一工作区与容量关联:确保报表和数据集处于同一个关联了Embedded容量的工作区,且Service Principal对该工作区拥有至少Member及以上权限(推荐Workspace Admin,避免权限遗漏)。
  2. 修正GenerateToken API请求体:
    • 必须包含datasetId(报表绑定的数据集ID)
    • 设置identity为{"type": "App"}
    • 指定accessLevel为"View"
      示例请求体:
    {
      "accessLevel": "View",
      "datasetId": "<你的数据集ID>",
      "identity": {
        "type": "App"
      }
    }
    
  3. 验证权限与容量配置:
    • 确认Service Principal在目标工作区的权限已生效
    • 检查工作区的容量分配状态,确保已正确关联到你的Embedded容量
  4. 核对API参数:确保调用API时使用的workspaceId是报表所在的容量关联工作区ID,而非数据集原工作区ID(若已移动数据集)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.21 17:45:11