我有一个实现了Azure Active Directory身份验证的Web应用程序。
现在,我使用Secure Embed Option将我的Power BI报表嵌入此Web应用程序中。
[每当用户登录Web应用程序时,成功登录Web应用程序后,他都会在Power BI报表上看到一个单独的登录按钮。
是否有一种方法可以使用当前登录的用户自动登录Power BI报表。
当前登录的用户可以访问Azure AD和Power BI。
安全嵌入选项用于将报表嵌入到给定的iframe中,每个用户都需要在iframe中登录。
为了提供单点登录体验,您需要使用用户登录身份验证来生成访问令牌。
生成访问令牌-
C#-https://docs.microsoft.com/en-us/power-bi/developer/get-azuread-access-token
JS-(使用ADAL)https://github.com/AzureAD/azure-activedirectory-library-for-js
然后,可以使用Power BI嵌入式JS库将此访问令牌用于将报告嵌入HTML容器中(例如div元素)。
当根据登录的不同用户创建令牌时,这样的实现称为'User Owns Data'。
示例代码和摘要-https://docs.microsoft.com/en-us/power-bi/developer/embed-sample-for-your-organization
用户的嵌入式设置工具拥有数据:https://app.powerbi.com/embedsetup/UserOwnsData