使用示例 Node 和 .NET 的未经授权 (401) Power BI Embedded

2024-03-20

运行示例时为您的客户嵌入 https://learn.microsoft.com/en-us/power-bi/developer/embedded/embed-sample-for-customers?tabs=node-js#step-8---embed-your-content应用程序(Node 和 .NET),我收到此错误(在控制台中来自/getEmbedToken)

Status: Unauthorized (401)
Response: {"error":{"code":"PowerBINotAuthorizedException","pbi.error":{"code":"PowerBINotAuthorizedException","parameters":{},"details":[],"exceptionCulprit":1}}}
RequestId: fe5ca8dd-a49e-41b0-8f08-**********
  • 我嵌入的报告可从 Power BI 服务 (app.powerbi.com) 中看到

我努力了:

  • 确保 config.json 和 web.config 具有正确的信息(clientId、reportId、tenantId 等)
  • authenticationMode 是 ServicePrincipal,我正在使用全局管理员的凭据(创建数据集、报告的同一用户,拥有所有权限,是应用程序注册所有者等)
  • 应用程序注册中对 Power BI REST API 授予的所有权限
  • 工作区访问已启用
  • 我正在使用 Pro 试用版,尚未使用过任何开发者代币 https://learn.microsoft.com/en-us/rest/api/power-bi/available-features/available-features-get-available-features yet ("usage": 0)
  • The dataset https://learn.microsoft.com/en-us/rest/api/power-bi/datasets/get-dataset不需要有效身份("isEffectiveIdentityRequired": false)

有谁知道还需要检查什么吗?

Thanks!


我发现了问题。如果有人遇到这种情况,解决方案如下:

问题出在第 7 步 -启用工作区访问 https://learn.microsoft.com/en-us/power-bi/developer/embedded/embed-sample-for-customers?tabs=node-js#step-7---enable-workspace-access表明登录到 Power BI 服务 > 要启用的工作区 > 工作区访问 > 访问窗格,> 将服务主体复制到输入电子邮件地址文本框。

因为全局管理员的邮箱已经填好了,所以忽略了实际的需求输入服务主体(“输入电子邮件地址”令人困惑)。

服务主体的名称是 Azure AD 应用程序的显示名称,它显示在 Azure AD 应用程序的概述选项卡中。如果您定义了安全组,这也可能是一个安全组。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用示例 Node 和 .NET 的未经授权 (401) Power BI Embedded 的相关文章

随机推荐