1

我正在使用Angular 8microsoft-adal-angular6包登录和ngx-powerbi包嵌入 Powerbi 报告

我已创建 Azure 应用注册并授予 Powerbi API 权限

在此处输入图像描述

我正在使用以下配置进行 Azure AD 登录

{
    tenant: 'my tenant id',
    clientId: 'my client id',
    redirectUri: 'http://localhost:4200',
    navigateToLoginRequestUrl: false,
    cacheLocation: 'localStorage',
    postLogoutRedirectUri: 'http://localhost:4200',
    tokenUrl: 'https://graph.microsoft.com',
    resource: 'https://analysis.windows.net/powerbi/api',
    expireOffsetSeconds: 15 * 60
}

我尝试使用以下代码嵌入 powerbi 报告

<ngx-powerbi-component
    type="report"
    id="my-report-id"
    embedUrl="https://app.powerbi.com/reportEmbed?reportId=my-report-id&groupId=my-group-id"
    tokenType="Aad"
    [accessToken]="token from ADAL"
  ></ngx-powerbi-component>

我已在 powerbi 端启用服务主体访问

但我仍然得到在此处输入图像描述

如果我从 Postman 生成 AD 令牌

GET https://login.microsoftonline.com/vca.com/oauth2/token
grant_type=password&client_id=[my_client_id]&client_secret=[my_client_secret]&resource=https://analysis.windows.net/powerbi/api&username=[username]&password=[password]

并使用 ngx-powerbi-component 中的响应令牌,我可以查看报告。

我无法弄清楚如何从 MS ADAL 生成正确的 AD 令牌。

4

0 回答 0