【问题标题】:Azure PowerBI authentication without redirecting to another page无需重定向到另一个页面的 Azure PowerBI 身份验证
【发布时间】:2016-02-08 11:52:14
【问题描述】:

是否可以在不重定向到另一个页面的情况下获得PowerBI 的访问令牌?我正在开发一个已经包含登录机制的网络应用程序,我不需要两次登录。 OAuth 2.0 Client Credentials 适合我的情况吗?

【问题讨论】:

  • 您可以让您的用户首先使用 OAuth 登录吗?还是你无法控制?
  • 我现有的身份验证是 auth 但它不使用 AAD

标签: azure authentication adal powerbi


【解决方案1】:

如果您现有的身份验证使用的是 AAD 应用程序,并且用户的凭据对于您的应用程序及其 power bi 帐户是相同的,那么如果您的应用程序对您的应用程序和 Power BI 都具有权限,您应该获得一个访问令牌您可以同时用于 AAD 和 Power BI。

在大多数情况下,上述情况并非如此 - 用户将拥有不同的 Power BI 帐户。所以你有两个选择。第一种(也是推荐的方法)是显示一次 Power BI 的登录信息,保存您返回的刷新令牌,然后使用刷新令牌获取新的访问令牌。这并不完全符合您的要求 - 需要定期执行重定向工作流程(第一次,如果刷新令牌过期),但它确实确保您不必存储和管理用户的凭据。

第二种(不推荐的方式)是使用 ADAL 用户名 + 密码工作流程。您可以查看great blog post 并决定是否要使用此工作流程。

【讨论】:

  • 我现有的身份验证没有使用 AAD 应用程序。ADAL 可以在使用 intellij IDEA 开发的 php/javascript 项目中使用吗?谢谢你的回答
  • 我不是 ADAL 专家 - 如果其他人可以加入我们将不胜感激 - 我链接到的博客提到 ADAL 用户名和密码库仅提供给 C#。我相信 ADAL 库只是包装了一个 REST API ......可能很费力,但你应该能够让它工作。
  • 我们确实有 javascript ADAL 版本,但您将无法对它们使用用户名/密码。用户名/密码流程只能由本机客户端使用。如果您已经拥有自己的登录系统,则处理此问题的正确方法是通过驱动 oauth2 流程来获取访问令牌和刷新令牌 - 这与您想要将您的 facebook 帐户连接到您的 twitter 时所做的没有什么不同帐户时,您必须至少通过 Facebook 进行身份验证一次。示例github.com/Azure-Samples/…
  • 如果我这样做,我是否有权查看 PowerBi 报告?我使用 Intellij IDEA(不是 Visual Studio,也不是 ASP.NET)。当我转到 azure 活动目录并尝试添加我的 Web 应用程序时,Power BI 服务似乎没有“向其他应用程序添加权限”。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2022-07-15
  • 2019-07-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-03-10
  • 1970-01-01
相关资源
最近更新 更多