本页演示如何在外部网站或应用程序中嵌入 AI/BI 仪表板。
使用已发布的仪表板
只有已发布的仪表板可以嵌入到外部应用程序中。 可以使用或不具有共享数据权限发布仪表板。 简言之,每个设置的含义如下:
共享数据权限: 对于使用此设置发布的仪表板,发布者的凭据确定对基础数据的访问权限。 查询在发布者的权限下运行。
单个数据权限: 对于使用此设置发布的仪表板,每个查看器必须具有对基础数据的显式访问权限才能查看结果。
有关详细信息,请参阅 “共享仪表板”。
注释
如果使用服务主体进行嵌入,则主体的权限控制对 API 的访问(例如检索仪表板配置或请求结果)。 但是,这些权限不会覆盖共享数据权限授予的访问权限。
嵌入选项
与Azure Databricks UI 中的仪表板一样,嵌入式仪表板允许你集中管理 Unity 目录管理的数据资产的读取权限,并运行仪表板的权限,通过查询历史记录和审核日志跟踪用户活动,甚至对没有Azure Databricks帐户的用户维护唯一的查看器计数。 使用以下选项之一嵌入仪表板。
基本嵌入
用户必须使用其Azure Databricks凭据登录才能查看嵌入式仪表板。 以下几点概述了基本嵌入工作原理的关键详细信息:
仪表板作者可以从 “共享 ”对话框生成 iframe 代码。
工作区管理员必须定义允许的嵌入图面。 请参阅 “管理仪表板访问权限”。
只有已显式授予访问权限的用户才能查看嵌入式仪表板。 请参阅 “共享仪表板 ”,了解有关仪表板共享的详细信息。
除非查看者具有从最近登录到原始工作区的活动会话,否则系统会提示查看者登录到Azure Databricks。
嵌入供外部用户使用
为外部用户嵌入允许将仪表板集成到外部系统中,而无需查看者拥有Azure Databricks帐户。 请参阅 什么是面向外部用户的嵌入?。 为外部用户使用嵌入技术:
- 允许应用程序使用带有 OAuth 密钥的服务主体在 Azure Databricks 上进行身份验证。
- 为Azure Databricks帐户或标识提供者之外的用户启用访问权限。
示例用例
为了物业经理管理建筑运营,组织可以为外部用户使用嵌入技术,为每一座建筑的每位物业经理提供嵌入式仪表板。该仪表板会在其管理门户中显示能源使用情况、占用统计信息和维护警报。
集成身份验证方法
若要帮助选择正确的嵌入方法,请考虑下表中的交互和用例。
| 嵌入方法 | 用户如何进行身份验证 | 权限是如何评估的 | 典型用例 |
|---|---|---|---|
| Databricks-认证 | 用户使用 Azure Databricks 帐户登录 | 检查用户自己的权限(如果仪表板使用共享数据权限,则应用发布者的权限) | 注册到Azure Databricks帐户的用户 |
| 嵌入供外部用户使用 | 应用程序使用服务主体和 OAuth 令牌进行身份验证 | 服务主体的权限控制 API 访问权限,但共享数据权限(如果已授予)仍确定数据访问 | 外部用户、门户或广泛分发 |
注释
为了为外部用户嵌入内容,Databricks 建议发布 具有单个数据权限的 嵌入式仪表板,并将所需的数据权限分配给与应用程序关联的服务主体。 如果仪表板是使用共享数据权限发布的,则发布者的权限用于数据访问,而不是服务主体的权限。
权限设置的最佳做法
若要降低使用访问令牌时公开敏感数据的风险:
发布具有单个数据权限的仪表板: 这可确保查询使用查看器的权限而不是发布者的权限运行。 如果发布者的权限后来得到扩大,该机制可以防止意外访问。
将服务主体限制为仅访问预期的表: 即使 Azure Databricks 无法推断仪表板将查询哪些表(尤其是在使用参数化查询时),您仍然可以配置服务主体,仅限制令牌访问到所需的表。
用于为外部用户嵌入的令牌有效期为一小时。 如果令牌遭到入侵,并且创建时没有适当的权限范围,攻击者可能能够访问在此期间较高版本的仪表板中包含的任何表。
刷新嵌入式仪表板
嵌入式仪表板的所有查看者都可以按需手动刷新仪表板。 还可以设置计划来定期刷新仪表板。 请参阅管理计划的仪表板更新和订阅。
嵌入式仪表板疑难解答
本部分列出了常见问题,并提供建议的解决方案。
深色模式未显示
嵌入式仪表板始终使用亮色模式显示。 如果已使用深色模式主题自定义仪表板或在Azure Databricks中处于深色模式,则嵌入的 iframe 仅显示主题的浅色模式版本。
若要确保嵌入的仪表板正确显示:
在草稿模式下打开仪表板。
访问 仪表板设置。
在 “主题”下,单击 “浅色”模式 预览嵌入时仪表板的显示方式。
根据需要调整颜色和样式以优化浅色模式外观。
有关自定义仪表板主题的详细信息,请参阅 主题设置。
嵌入的 iframe 为空
如果嵌入式 iframe 未显示数据,请确保在浏览器中启用第三方 Cookie。 外部内容(如嵌入式仪表板)需要此设置才能正常运行。
若要解决此问题,请在浏览器设置中启用第三方 Cookie。 如果不想为所有站点启用 Cookie,可以为特定网站添加例外。 有关管理 Cookie 的说明,请参阅浏览器的帮助文档。
以下步骤说明如何在 Chrome 浏览器中重启启用了第三方 Cookie 的会话。 此过程通过首先禁用,然后重新启用第三方 Cookie 来确保干净状态:
注销所有活动的 Azure Databricks 会话。
单击 URL 旁边的滑块图标。
单击 Cookie 和网站数据 ,禁用或阻止 第三方 Cookie。 系统会提示你刷新页面。
刷新页面,然后单击嵌入 iframe 中的 “登录 ”。 应显示一条错误消息。 关闭浏览器窗口。
在 Cookie 和站点数据下,允许 第三方 Cookie。
再次刷新页面。
转到嵌入式仪表板并单击“ 登录”。
后续步骤
- 设置基本嵌入:请参阅 基本仪表板嵌入。
- 为外部用户配置嵌入:请参阅 为外部用户嵌入哪些内容?。
- 管理嵌入权限:请参阅 “管理仪表板嵌入”。
- 共享已发布的仪表板:请参阅 “共享仪表板”。