教程:使用“为组织嵌入内容”应用程序嵌入 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 和代码依赖项:
Power BI 依赖项
你自己的 Microsoft Entra 租户。
以下许可证之一:
代码依赖项
.NET Core 3.1 SDK(或更高版本)
集成开发环境 (IDE)。 建议使用以下 IDE 之一:
方法
若要创建“为组织嵌入内容”示例应用,请执行以下步骤:
步骤 1 - 注册 Microsoft Entra 应用程序
通过向 Microsoft Entra ID 注册应用程序,可以为应用建立标识。
若要向 Microsoft Entra ID 注册应用程序,请按照注册应用程序中的说明进行操作。
步骤 2 - 创建 Power BI 工作区
Microsoft Fabric 将报表、仪表板和磁贴保留在工作区中。 若要嵌入这些项目,需要创建这些项并将其上传到工作区中。
提示
如果你已具有工作区,则可跳过此步骤。
若要创建工作区,请执行以下操作:
登录到 Fabric。
选择“工作区”。
选择“ + 新建工作区”。
为工作区命名,然后选择“保存”。
步骤 3 - 创建并发布 Power BI 报表
下一步是创建报表并将其上传到工作区。 你可使用 Power BI Desktop 创建自己的报表,然后将其发布到工作区。 也可将示例报表上传到你的工作区。
提示
如果你的工作区中已有一个报表,则可跳过此步骤。
若要下载示例报表并将其发布到工作区,请执行以下步骤:
打开 GitHub Power BI Desktop 示例文件夹。
选择“代码”,再选择“下载 zip” 。
提取已下载的 ZIP 并导航到“Samples Reports”文件夹。
选择要嵌入的报表,并将其发布到工作区。
步骤 4 - 获取嵌入的参数值
若要嵌入内容,需要获取一些参数值。 参数值取决于要使用的示例应用程序的语言。 下表列出了每个示例所需的参数值。
参数 | .NET Core | .NET Framework | React TypeScript |
---|---|---|---|
客户端 ID | |||
客户端机密 | |||
工作区 ID | |||
报表 ID |
客户端 ID
提示
适用于:.NET Core .NET Framework React TypeScript
若要获取客户端 ID GUID(也称为“应用程序 ID”),请执行以下步骤:
登录 Microsoft Azure。
搜索“应用程序注册”,然后选择“应用程序注册”链接。
选择用于嵌入 Power BI 内容的 Microsoft Entra 应用。
从“概述”部分,复制“应用程序(客户端) ID”GUID 。
客户端机密
提示
适用于:.NET Core .NET Framework React TypeScript
若要获取客户端机密,请执行下列步骤:
登录 Microsoft Azure。
搜索“应用程序注册”,然后选择“应用程序注册”链接。
选择用于嵌入 Power BI 内容的 Microsoft Entra 应用。
在“管理”下,选择“证书和机密”。
在“客户端机密”下,选择“新建客户端密钥” 。
在“添加客户端机密”弹出窗口中,提供应用程序机密的说明,选择应用程序机密过期时间,然后选择“添加”。
从“客户端机密”部分,复制新创建的应用程序机密的“值”列中的字符串。 客户端机密值为你的客户端 ID。
注意
请确保在第一次出现客户端密码值时复制它。 在你离开此页面后,客户端密码值将会隐藏起来,你将无法检索它。
工作区 ID
提示
适用于:.NET Core .NET Framework React TypeScript
若要获取工作区 ID GUID,请执行以下步骤:
登录 Power BI 服务。
打开要嵌入的报表。
复制 URL 中的 GUID。 GUID 是 /groups/ 和 /reports/ 之间的数字。
报表 ID
提示
适用于:.NET Core .NET Framework ReactTypeScript
若要获取报表 ID GUID,请执行以下步骤:
登录 Power BI 服务。
打开要嵌入的报表。
复制 URL 中的 GUID。 GUID 是 /reports/ 和 /ReportSection 之间的数字 。
第 5 步 - 嵌入内容
使用 Power BI Embedded 示例应用程序,可以创建“为组织嵌入内容”Power BI 应用。
请按照以下步骤来修改“为组织嵌入内容”示例应用程序,以便嵌入 Power BI 报表。
打开 Power BI 开发人员示例文件夹。
选择“代码”,再选择“下载 zip” 。
提取已下载的 ZIP 并导航到“PowerBI-Developer-Samples-master”文件夹。
根据你想要应用程序使用的语言,打开以下文件夹之一:
- .NET Core
- .NET Framework
- React-TS
注意
“为组织嵌入内容”示例应用程序仅支持之前列出的框架。 Java、Node JS 和 Python 示例应用程序,仅支持为客户嵌入内容解决方案 。
配置 Microsoft Entra 应用
登录到 Azure 门户。
选择“应用注册” 。 如果无法看到此选项,请进行搜索。
打开在步骤 1 - 注册 Microsoft Entra 应用程序中创建的 Microsoft Entra 应用程序。
在“管理”菜单中,选择“身份验证”。
在“平台配置”中,打开“Web”平台,然后在“重定向 URI”部分中添加
https://localhost:5000/signin-oidc
。注意
如果没有“Web”平台,请选择“添加平台”,然后在“配置平台”窗口中,选择“Web”。
保存所做更改。
配置示例嵌入应用
打开“Embed for your organization”文件夹。
使用以下方法之一打开“为组织嵌入内容”示例应用:
如果使用 Visual Studio,请打开 UserOwnsData.sln 文件。
如果使用 Visual Studio Code,请打开“UserOwnsData”文件夹。
打开 appsettings 并填写以下参数值:
运行示例应用
通过选择适当的选项来运行项目:
如果使用 Visual Studio,请选择“IIS Express”(播放)。
如果使用 Visual Studio Code,请选择“运行”>“启动调试”。
登录到嵌入示例应用程序。
注意
首次登录时,系统将提示你允许应用获得 Microsoft Entra 权限。
加载嵌入示例应用程序时,选择要嵌入的 Power BI 内容,然后选择“嵌入”。
开发应用程序
配置并运行“为客户嵌入内容”示例应用程序后,可以开始开发自己的应用程序。
更新用户权限
用户需要对报表所在的 Power BI 文件夹具有访问权限。 向用户授予访问文件夹的权限时,更改通常仅在用户登录到 Power BI 门户后才会生效。 为了使新权限立即生效,在嵌入式方案中,在启动时显式调用刷新用户权限 REST API。 此 API 调用将刷新权限,并避免新授予权限的用户授权失败。