将PowerBI仪表板/报表嵌入Web应用程序

时间:2018-08-07 04:31:50

标签: c# powerbi

我正在尝试将Power BI Dash Board报告嵌入到Web应用程序中。

1)我已使用此Microsoft链接及其来自github https://docs.microsoft.com/en-us/power-bi/developer/embed-sample-for-your-organization的示例应用程序配置了该应用程序。

2)我也尝试使用此文档https://bitbucket.org/omnistream/powerbi-api-example \

进行配置

我正在使用公司的电子邮件ID / password访问终点。下面是详细信息。我对仪表板报告具有管理员权限,并且我具有Power BI Pro用户帐户。

发布终点:https://login.microsoftonline.com/common/oauth2/token

请求标头: 用户代理:提琴手 主持人:login.windows.net 内容类型:application / x-www-form-urlencoded 内容长度:xxx

带有请求正文: grant_type=password&scope=openid&username=myUserName@mycompany.com&password=MyPassword&client_id=XXXXX&resource = https://analysis.windows.net/powerbi/api&client_secret=XXXXX

它抛出以下错误: error_description = AADSTS70002:验证凭据时出错。 AADSTS50126:无效的用户名或密码 跟踪ID:c13c59dc-79e2-4169-bae2-06c402310100 相关编号:a747a226-362a-45aa-956a-122629fa9863 时间戳记:2018-08-06 21:27:59Z

我需要分别配置或创建Master Power BI帐户吗?

或者如果我的公司网络干扰发布请求以屏蔽用户ID /密码,是否有任何工具可以帮助我跟踪此网络问题?

1 个答案:

答案 0 :(得分:0)

即使绕过公司代理的凭据后,它也无法正常工作。 最后,我在Microsoft处记录了故障单,并使其仅能用于以下选项之一,即本机应用程序。以下是步骤

1)从here下载“应用拥有数据”应用。并将您的power Bi应用程序在Azure Portal中注册为“应用程序类型”的“本机应用程序”。请访问有问题的链接#1,以获取有关配置PowerBI应用程序网页嵌入的详细信息。

2)打开项目,并使用NUget包管理器导入所有必需的Dll。

3)在项目中使用这些值配置cloud.config。

  <appSettings>
  <add key="authorityUrl" value="https://login.microsoftonline.com/common/oauth2/authorize/" />
  <add key="resourceUrl" value="https://analysis.windows.net/powerbi/api" />   
  <add key="apiUrl" value="https://api.powerbi.com/" />
  <add key="embedUrlBase" value="https://app.powerbi.com/v1.0/myorg/" /> 
</appSettings>

4)使用项目中的这些值配置您的web.config文件。

    <appSettings file="Cloud.config">
    <add key="webpages:Version" value="3.0.0.0" />
    <add key="webpages:Enabled" value="false" />
    <add key="ClientValidationEnabled" value="true" />
    <add key="UnobtrusiveJavaScriptEnabled" value="true" />    
    <add key="applicationId" value="xxxxxxx-xxxx-xxxx-xxxx-xxxxxx" /> <!--For PowerBI Native application ID-->    
    <add key="workspaceId" value="xxxxxxx-xxxx-xxxx-xxxx-xxxxxx" />
    <!-- The id of the report to embed. If empty, will use the first report in group -->     
    <add key="reportId" value="xxxxxxx-xxxx-xxxx-xxxx-xxxxxx" />
    <!-- Note: Do NOT leave your credentials on code. Save them in secure place. -->
    <add key="pbiUsername" value="XXXXXXXXX@yourcompany.com" />
    <add key="pbiPassword" value="xxxxxxxx" />    
  </appSettings>

5)在power BI网站上发布报告,创建仪表板,在上述web.config设置中填写报告ID和工作空间ID。

6)执行该应用程序。应该适用于嵌入报表,仪表板和图块类型。