管理 Partner Connect 中的连接

你可以通过将 Azure Databricks 工作区连接到合作伙伴解决方案来执行管理任务,例如:

  • 管理合作伙伴帐户的用户。
  • 管理连接使用的 Azure Databricks 服务主体和相关的 Azure Databricks 个人访问令牌。
  • 断开工作区与合作伙伴的连接。

若要管理 Partner Connect,必须以工作区管理员身份登录到工作区。有关详细信息,请参阅管理用户

管理合作伙伴帐户用户

对于允许用户使用 Partner Connect 登录其帐户或网站的合作伙伴(例如 Fivetran 和 Rivery),当组织中首次有用户从你的 Azure Databricks 工作区之一连接到合作伙伴时,该用户将成为该合作伙伴在组织所有工作区中的合作伙伴帐户管理员。 若要使组织中的其他用户能够登录到该合作伙伴,合作伙伴帐户管理员必须首先将这些用户添加到组织的合作伙伴帐户。 某些合作伙伴还允许合作伙伴帐户管理员委派此权限。 有关详细信息,请参阅合作伙伴网站上的文档。

如果没有人可以将用户添加到组织的合作伙伴帐户(例如,合作伙伴帐户管理员不再可用),请联系合作伙伴寻求帮助。 有关支持链接,请参阅 Azure Databricks Partner Connect 合作伙伴列表。

将 Unity Catalog 管理的数据连接到合作伙伴解决方案

如果工作区启用了 Unity Catalog,则可将选定的合作伙伴解决方案连接到 Unity Catalog 管理的数据。 使用 Partner Connect 创建连接时,可以选择让合作伙伴使用旧版 Hive 元存储 (hive_metastore) 或你拥有的另一目录。 元存储管理员可以选择元存储中分配给你的工作区的任何目录。

注意

如果合作伙伴解决方案不支持具有 Partner Connect 的 Unity Catalog,你只能使用工作区默认目录。 如果默认目录不是 hive_metastore,并且你不拥有默认目录,你会收到错误。

有关支持具有 Partner Connect 的 Unity Catalog 的合作伙伴列表,请参阅 Azure Databricks Partner Connect 合作伙伴列表。

若要了解如何排查连接问题,请参阅对 Partner Connect 进行故障排除

管理服务主体和个人访问令牌

对于需要 Azure Databricks 服务主体的合作伙伴,当 Azure Databricks 工作区中的某人首次连接到特定合作伙伴时,Partner Connect 会在工作区中创建一个 Azure Databricks 服务主体以供该合作伙伴使用。 Partner Connect 使用格式 <PARTNER-NAME>_USER 生成服务主体显示名称。 例如,对于合作伙伴 Fivetran,服务主体的显示名称为 FIVETRAN_USER

Partner Connect 还会创建 Azure Databricks 个人访问令牌并将其与该 Azure Databricks 服务主体关联。 Partner Connect 在后台向合作伙伴提供此令牌的值,以完成与该合作伙伴的连接。 你无法查看或获取此令牌的值。 此令牌不会过期,除非你或其他人删除它。 另请参阅与合作伙伴断开连接

Partner Connect 向工作区中的 Azure Databricks 服务主体授予以下访问权限:

合作伙伴 权限
Fivetran、Matillion、Power BI、Tableau、erwin Data Modeler、Precisely Data Integrity Suite 这些解决方案不需要 Azure Databricks 服务主体。
dbt 云, Hevo 数据, Rivery, Rudderstack, Snowplow - 用于创建个人访问令牌的“可使用”令牌权限。
- SQL 仓库创建权限。
- 工作区访问权限。
- Databricks SQL 访问权限。
- (Unity Catalog) 对所选目录的 USE CATALOG 特权。
- (Unity Catalog) 对所选目录的 CREATE SCHEMA 特权。
- (旧版 Hive 元存储)对 hive_metastore 目录的 USAGE 特权。
-(旧版 Hive 元存储)对 hive_metastore 目录的 CREATE 特权,使 Partner Connect 可以代表你在旧版 Hive 元存储中创建对象。
- 它所创建的表的所有权。 服务主体无法查询它未创建的任何表。
Prophecy - 用于创建个人访问令牌的“可使用”令牌权限。
- 访问你的工作区。
- 群集创建权限。 服务主体无法访问它未创建的任何群集。
- 作业创建权限。 服务主体无法访问它未创建的任何作业。
John Snow Labs、Labelbox - 用于创建个人访问令牌的“可使用”令牌权限。
- 工作区访问权限。
Anomalo、AtScale、Census、Hex、Hightouch、Lightup、Monte Carlo、Preset、Privacera、Qlik Sense、Sigma、Stardog - 用于创建个人访问令牌的“可使用”令牌权限。
- 对所选 Databricks SQL 仓库的“可使用”特权。
- 对所选架构的 SELECT 特权。
- (Unity Catalog) 对所选目录的 USE CATALOG 特权。
- (Unity Catalog) 对所选架构的 USE SCHEMA 特权。
-(旧版 Hive 元存储)对所选架构的 USAGE 特权。
-(旧版 Hive 元存储)对所选架构的 READ METADATA 特权。
Dataiku - 用于创建个人访问令牌的“可使用”令牌权限。
- SQL 仓库创建权限。
- (Unity Catalog) 对所选目录的 USE CATALOG 特权。
- (Unity Catalog) 对所选架构的 USE SCHEMA 特权。
- (Unity Catalog) 对所选目录的 CREATE SCHEMA 特权。
-(旧版 Hive 元存储)对 hive_metastore 目录和所选架构的 USAGE 特权。
-(旧版 Hive 元存储)对 hive_metastore 目录的 CREATE 特权,使 Partner Connect 可以代表你在旧版 Hive 元存储中创建对象。
-(旧版 Hive 元存储)对所选架构的 SELECT 特权。
SuperAnnotate - 用于创建个人访问令牌的“可使用”令牌权限。
- 对所选 Databricks SQL 仓库的“可使用”特权。
- 对所选架构的 SELECT 特权。
- (Unity Catalog) 对所选目录的 USE CATALOG 特权。
- (Unity Catalog) 对所选架构的 USE SCHEMA 特权。
-(旧版 Hive 元存储)对 hive_metastore 目录和所选架构的 USAGE 特权。
-(旧版 Hive 元存储)对所选架构的 SELECT 特权。
Informatica 云数据集成 - 用于创建个人访问令牌的“可使用”令牌权限。
- 对所选 Databricks SQL 仓库的“可管理”特权。
- 对数据对象的 CREATEUSAGE 特权。
- (Unity Catalog) 对所选目录的 USE CATALOG 特权。
- (Unity Catalog) 对所选架构的 USE SCHEMA 特权。
-(旧版 Hive 元存储)对 USAGE 目录和所选架构的 CREATEhive_metastore 特权。
-(旧版 Hive 元存储)对所选架构的 SELECT 特权。

与合作伙伴断开连接

如果合作伙伴磁贴带有复选标记图标,则表示 Azure Databricks 工作区中的某个人已经与该合作伙伴建立连接。 若要与该合作伙伴断开连接,请在 Partner Connect 中重置该合作伙伴的磁贴。 重置合作伙伴磁贴会执行以下操作:

  • 从合作伙伴磁贴中清除复选标记图标。
  • 删除关联的 SQL 仓库或群集(如果合作伙伴需要)。
  • 删除关联的 Azure Databricks 服务主体(如果合作伙伴需要)。 删除服务主体也会删除该服务主体的相关 Azure Databricks 个人访问令牌。 此令牌的值用于完成工作区与合作伙伴之间的连接。 有关详细信息,请参阅管理服务主体和个人访问令牌

警告

删除 SQL 仓库、群集、Azure Databricks 服务主体或 Azure Databricks 服务主体的个人访问令牌是永久性操作,无法撤消。

重置合作伙伴磁贴不会删除组织的相关合作伙伴帐户或更改与合作伙伴相关的连接设置。 但是,重置合作伙伴磁贴会中断工作区与相关合作伙伴帐户之间的连接。 若要重新连接,必须创建从工作区到合作伙伴的新连接,然后必须手动编辑相关合作伙伴帐户中的原始连接设置,以匹配新连接设置。

若要重置合作伙伴磁贴,请单击该磁贴,单击“删除连接”,然后按屏幕上的说明操作。

或者,可以通过删除与合作伙伴关联的 Azure Databricks 工作区中的相关 Azure Databricks 服务主体,手动断开工作区与该合作伙伴的连接。 如果要将工作区与合作伙伴断开连接,但仍保留其他关联资源以及磁贴上显示的复选标记图标,你可能需要执行此操作。 删除服务主体也会删除该服务主体的相关个人访问令牌。 此令牌的值用于完成工作区与合作伙伴之间的连接。 有关详细信息,请参阅管理服务主体和个人访问令牌

若要删除 Azure Databricks 服务主体,请使用 Databricks REST API,如下所示:

  1. 通过为工作区调用工作区服务主体 API 中的 GET /preview/scim/v2/ServicePrincipals 操作来获取 Azure Databricks 服务主体的应用程序 ID。 记下响应中服务主体的 applicationId
  2. 使用服务主体的 applicationId 为工作区调用工作区服务主体 API 中的 DELETE /preview/scim/v2/ServicePrincipals 操作。

例如,若要获取工作区的可用服务主体显示名称和应用程序 ID 列表,可以调用 curl,如下所示:

curl --netrc --request GET \
https://<databricks-instance>/api/2.0/preview/scim/v2/ServicePrincipals \
| jq '[ .Resources[] | { displayName: .displayName, applicationId: .applicationId } ]'

<databricks-instance> 替换为 Azure Databricks 每工作区 URL,例如,对于你的工作区,该 URL 为 adb-1234567890123456.7.azuredatabricks.net

服务主体的显示名称位于输出的 displayName 字段中。 Partner Connect 使用格式 <PARTNER-NAME>_USER 生成服务主体显示名称。 例如,对于合作伙伴 Fivetran,服务主体的显示名称为 FIVETRAN_USER

服务主体的应用程序 ID 值位于输出的 applicationId 字段中,例如 123456a7-8901-2b3c-45de-f678a901b2c

若要删除服务主体,可以按下面所示调用 curl

curl --netrc --request DELETE \
https://<databricks-instance>/api/2.0/preview/scim/v2/ServicePrincipals/<application-id>

将:

  • <databricks-instance> 替换为每工作区 URL,例如,对于你的工作区,该 URL 为 adb-1234567890123456.7.azuredatabricks.net
  • <application-id> 替换为服务主体的应用程序 ID 值。

前面的示例使用 .netrc 文件和 jq。 请注意,在本例中,.netrc 文件使用你的个人访问令牌值,而不是服务主体的值。

将工作区与合作伙伴断开连接后,可能需要清理合作伙伴在工作区中创建的任何相关资源。 这可能包括 SQL 仓库或群集以及任何相关的数据存储位置。 有关详细信息,请参阅连接到 SQL 仓库删除计算

如果确定组织没有其他工作区连接到合作伙伴,你可能还希望删除组织在该合作伙伴的帐户。 为此,请联系合作伙伴寻求帮助。 有关支持链接,请参阅相应的合作伙伴连接指南。