教程:使用“为组织嵌入内容”应用程序嵌入 Power BI 内容

通过 Power BI 嵌入式分析,可以将 Power BI 内容(例如报表、仪表板和磁贴)嵌入到应用程序中。

本教程介绍以下操作:

  • 设置嵌入式环境。
  • 配置“为组织嵌入内容”(也称为“用户拥有数据”)示例应用程序 。

用户需要登录到 Power BI 才能使用应用程序。

“为组织嵌入内容”解决方案通常由企业和大型组织使用,适用于内部用户。

重要

如果要为国家/地区云嵌入内容,本教程的前几步会有所不同。 有关详细信息,请参阅国家/地区云的嵌入内容

代码示例规范

本教程说明了如何采用下列框架之一配置“为组织嵌入内容”示例应用程序:

  • .NET framework
  • .NET Core
  • React TypeScript

注意

借助 .NET Core 和 .NET Framework 示例,最终用户可以查看他们在 Power BI 服务中可以访问的任何 Power BI 仪表板、报表或磁贴。 使用 React TypeScript 示例,可以仅嵌入一个最终用户已经可以在 Power BI 服务中访问的报表。

代码示例支持下列浏览器:

  • Microsoft Edge
  • Google Chrome
  • Mozilla Firefox

先决条件

在开始学习本教程之前,请确认你具有以下 Power BI 和代码依赖项:


方法

若要创建“为组织嵌入内容”示例应用,请执行以下步骤:

  1. 注册 Microsoft Entra 应用程序

  2. 创建 Power BI 工作区

  3. 创建并发布 Power BI 报表

  4. 获取嵌入的参数值

  5. 嵌入内容

步骤 1 - 注册 Microsoft Entra 应用程序

通过向 Microsoft Entra ID 注册应用程序,可以为应用建立标识。

若要向 Microsoft Entra ID 注册应用程序,请按照注册应用程序中的说明进行操作。

步骤 2 - 创建 Power BI 工作区

Power BI 将报表、仪表板和磁贴存储在工作区中。 若要嵌入这些项,需要创建它们并将其上传到工作区。

提示

如果你已具有工作区,则可跳过此步骤。

若要创建工作区,请执行以下操作:

  1. 登录到 Power BI。

  2. 选择“工作区”。

  3. 选择“创建工作区”。

  4. 为工作区命名,然后选择“保存”。

步骤 3 - 创建并发布 Power BI 报表

下一步是创建报表并将其上传到工作区。 你可使用 Power BI Desktop 创建自己的报表,然后将其发布到工作区。 也可将示例报表上传到你的工作区。

提示

如果你的工作区中已有一个报表,则可跳过此步骤。

若要下载示例报表并将其发布到工作区,请执行以下步骤:

  1. 打开 GitHub Power BI Desktop 示例文件夹。

  2. 选择“代码”,再选择“下载 zip” 。

    A screenshot showing the ZIP download option in the Power B I desktop samples GitHub

  3. 提取已下载的 ZIP 并导航到“Samples Reports”文件夹。

  4. 选择要嵌入的报表,并将其发布到工作区。

步骤 4 - 获取嵌入的参数值

若要嵌入内容,需要获取一些参数值。 参数值取决于要使用的示例应用程序的语言。 下表列出了每个示例所需的参数值。

参数 .NET Core .NET Framework React TypeScript
客户端 ID
客户端机密
工作区 ID
报表 ID

客户端 ID

提示

适用范围: .NET Core .NET Framework React TypeScript

若要获取客户端 ID GUID(也称为“应用程序 ID”),请执行以下步骤:

  1. 登录 Microsoft Azure

  2. 搜索“应用程序注册”,然后选择“应用程序注册”链接。

  3. 选择用于嵌入 Power BI 内容的 Microsoft Entra 应用。

  4. 从“概述”部分,复制“应用程序(客户端) ID”GUID 。

客户端机密

提示

适用范围: .NET Core .NET Framework React TypeScript

若要获取客户端机密,请执行下列步骤:

  1. 登录 Microsoft Azure

  2. 搜索“应用程序注册”,然后选择“应用程序注册”链接。

  3. 选择用于嵌入 Power BI 内容的 Microsoft Entra 应用。

  4. 在“管理”下,选择“证书和机密”

  5. 在“客户端机密”下,选择“新建客户端密钥” 。

  6. 在“添加客户端机密”弹出窗口中,提供应用程序机密的说明,选择应用程序机密过期时间,然后选择“添加” 。

  7. 从“客户端机密”部分,复制新创建的应用程序机密的“值”列中的字符串 。 客户端机密值为你的客户端 ID。

注意

请确保在第一次出现客户端密码值时复制它。 在你离开此页面后,客户端密码值将会隐藏起来,你将无法检索它。

工作区 ID

提示

适用范围: .NET Core .NET Framework React TypeScript

若要获取工作区 ID GUID,请执行以下步骤:

  1. 登录 Power BI 服务。

  2. 打开要嵌入的报表。

  3. 复制 URL 中的 GUID。 GUID 是 /groups/ 和 /reports/ 之间的数字 。

    A screenshot showing workspace ID GUID in the Power B I service U R L

报表 ID

提示

适用范围: .NET Core .NET Framework React TypeScript

若要获取报表 ID GUID,请执行以下步骤:

  1. 登录 Power BI 服务。

  2. 打开要嵌入的报表。

  3. 复制 URL 中的 GUID。 GUID 是 /reports/ 和 /ReportSection 之间的数字 。

    A screenshot showing report ID GUID in the Power B I service U R L

第 5 步 - 嵌入内容

使用 Power BI Embedded 示例应用程序,可以创建“为组织嵌入内容”Power BI 应用。

请按照以下步骤来修改“为组织嵌入内容”示例应用程序,以便嵌入 Power BI 报表。

  1. 打开 Power BI 开发人员示例文件夹。

  2. 选择“代码”,再选择“下载 zip” 。

    A screenshot showing the ZIP download option in the Power B I developer samples GitHub

  3. 提取已下载的 ZIP 并导航到“PowerBI-Developer-Samples-master”文件夹。

  1. 根据你想要应用程序使用的语言,打开以下文件夹之一:

    • .NET Core
    • .NET Framework
    • React-TS

    注意

    “为组织嵌入内容”示例应用程序仅支持之前列出的框架。 Java、Node JS 和 Python 示例应用程序,仅支持为客户嵌入内容解决方案 。

配置 Microsoft Entra 应用

  1. 登录到 Azure 门户

  2. 选择“应用注册” 。 如果无法看到此选项,请进行搜索。

  3. 打开在步骤 1 - 注册 Microsoft Entra 应用程序中创建的 Microsoft Entra 应用程序。

  4. 在“管理”菜单中,选择“身份验证”。

  1. 在“平台配置”中,打开“Web”平台,然后在“重定向 URI”部分中添加 https://localhost:5000/signin-oidc

    注意

    如果没有“Web”平台,请选择“添加平台”,然后在“配置平台”窗口中,选择“Web”。

  2. 保存所做更改。

Screenshot of the Azure portal window, which shows the app authentication configurations and the web redirect URI for the .NET core app sample.

配置示例嵌入应用

  1. 打开“Embed for your organization”文件夹。

  2. 使用以下方法之一打开“为组织嵌入内容”示例应用:

  3. 打开 appsettings 并填写以下参数值:

运行示例应用

  1. 通过选择适当的选项来运行项目:

    • 如果使用 Visual Studio,请选择“IIS Express”(播放) 。

    • 如果使用 Visual Studio Code,请选择“运行”>“启动调试”。

  1. 登录到嵌入示例应用程序。

    注意

    首次登录时,系统将提示你允许应用获得 Microsoft Entra 权限。

  2. 加载嵌入示例应用程序时,选择要嵌入的 Power BI 内容,然后选择“嵌入”。

    Screenshot showing the Power BI embedding sample app.

开发应用程序

配置并运行“为客户嵌入内容”示例应用程序后,可以开始开发自己的应用程序。

更新用户权限

用户需要对报表所在的 Power BI 文件夹具有访问权限。 向用户授予访问文件夹的权限时,更改通常仅在用户登录到 Power BI 门户后才会生效。 为了使新权限立即生效,在嵌入式方案中,在启动时显式调用刷新用户权限 REST API。 此 API 调用将刷新权限,并避免新授予权限的用户授权失败。