我想使用 Power BI REST API、应用程序到应用程序身份验证(服务主体)查询 Power BI 数据集。 向 Power BI 数据集发送请求时收到错误 403(禁止访问)。
我有:
https://api.powerbi.com/v1.0/myorg/groups/{{group_id}}/datasets 授权:不记名令牌
任何人都可以帮忙解决这个问题吗,这里缺少什么,谢谢。
invalid 范围生成的令牌查询数据集时,出现
403 Forbidden
错误:
GET https://api.powerbi.com/v1.0/myorg/groups/{group_id}/datasets
回复:
要解决错误,请确保通过将 scope 值传递为
https://analysis.windows.net/powerbi/api/.default
来生成访问令牌我创建了一个 AAD 安全组并向其中添加了
PowerBI App
服务主体,如下所示:
现在,我通过在管理门户中的以下选项下添加它来允许该组调用 Power BI API:
确保授予对 Power Bi 工作区的
服务主体或安全组的访问权限:
注意,授予后需要等待
客户端凭证
15-20
分钟 访问服务主体,因为会有延迟。现在,我使用
流通过 Postman 生成访问令牌,参数如下:
POST https://login.microsoftonline.com/tenantId/oauth2/v2.0/token
grant_type:client_credentials
client_id: appId
client_secret: secret
scope: https://analysis.windows.net/powerbi/api/.default
当我使用这个令牌来查询数据集时,我成功地得到了
response,如下所示:
GET https://api.powerbi.com/v1.0/myorg/groups/{group_id}/datasets
参考: