我已经创建了我的应用程序并在https://dev.powerbi.com/Apps上注册为 Native。在 Azure 中,我添加了自己的广告全局管理员用户,将自己注册为管理员,授予所有 Power BI API 权限。我创建了一个工作区,为自己添加了一个管理员用户。在我的工作区中上传了 Power BI 报告。当我在浏览器上时效果很好。
我正在尝试使用 ASP.NET 4.61 MVC 连接我的报告。我的凭据、用户名和密码有效,所以下面的代码没有问题:
var credential = new UserPasswordCredential(Username, Password);
// Authenticate using created credentials
var authenticationContext = new AuthenticationContext(AuthorityUrl);
var authenticationResult = await authenticationContext.AcquireTokenAsync(ResourceUrl, ApplicationId, credential);
if (authenticationResult == null)
{
result.ErrorMessage = "Authentication Failed.";
return View(result);
}
var tokenCredentials = new TokenCredentials(authenticationResult.AccessToken, "Bearer");
但是,我收到错误:在workspaceId 与我的工作区匹配Status: Unauthorized (401)
的行上。GetReportsInGroupAsync(Workspaceid);
// Create a Power BI Client object. It will be used to call Power BI APIs.
using (var client = new PowerBIClient(new Uri(ApiUrl), tokenCredentials))
{
// Get a list of reports.
var reports = await client.Reports.GetReportsInGroupAsync(WorkspaceId);
...
}
因此,由于未经授权的错误,我无法访问我工作区的报告,并且我无法通过它。我如何授权自己,我已经在 AAD 中作为全局管理员,将自己添加为应用程序所有者,并且在工作区中我已经注册为管理员。
我在下面找到了这个主题,但答案并没有解决我的问题:用于电源报告嵌入的未授权错误 401
遵循此指南,也没有工作:https ://docs.microsoft.com/en-us/power-bi/developer/register-app
任何帮助,将不胜感激。