什么是 Databricks 到 Open 共享协议?

本页概述了提供程序如何使用 Databricks-to-Open 共享协议在任意位置与任何计算平台上的任何用户共享启用了 Unity 目录的Azure Databricks工作区中的数据。 如果你是数据收件人(共享数据的用户或用户组),请改为 使用 OpenSharing(对于收件人)查看与你共享的数据

谁应该使用 Databricks-to-Open 共享协议?

可通过三种方法使用 OpenSharing 共享数据:

  1. 本文介绍的 Databricks 到 Open 共享协议可让你与任何计算平台上的用户共享在启用了 Unity 目录的 Databricks 工作区中管理的数据。

    此方法使用内置于Azure Databricks的 OpenSharing 服务器,当使用 Unity 目录管理数据并希望与不使用 Databricks 或无权访问启用了 Unity 目录的 Databricks 工作区的用户共享数据时,此方法非常有用。 在提供方一侧与 Unity Catalog 的集成简化了提供方的设置和治理。

  2. 开源 OpenSharing 服务器的客户管理的实现,它让你能够在任何平台之间进行共享(无论是否是 Databricks)。

    请参阅 开放源代码 项目

  3. Databricks-to-Databricks 共享协议使您能够将启用 Unity Catalog 的工作区中的数据与其他拥有启用 Unity Catalog 的 Databricks 工作区访问权限的用户共享。

    请参阅什么是 OpenSharing Databricks-to-Databricks 协议?

有关 OpenSharing 的简介和有关这三种方法的详细信息,请参阅 什么是 OpenSharing?

Databricks-to-Open 共享工作流

本部分简要概述了 Databricks-to-Open 共享工作流,并提供了每个步骤的详细文档链接。

在 Databricks 到 Open 的共享模式中:

  1. 数据提供程序会创建一个收件人,该收件人是一个命名对象,表示数据提供程序要与之共享数据的用户或用户组。

    当数据提供方创建收件人时,提供方将使用长期有效的持有者令牌或 Open ID Connect (OIDC) 联合身份联邦来设置身份验证。 如果提供程序使用持有者令牌,Azure Databricks 将生成凭据文件和数据提供程序可以发送到收件人以访问凭据文件的激活链接。 在 OIDC 联合流中,收件人的 IdP 基于提供程序创建的策略管理身份验证。

    有关详细信息,请参阅使用持有者令牌为非 Databricks 用户创建接收者对象(Databricks-to-Open 共享)为 OpenSharing 接收者启用 Open ID Connect (OIDC) 联合身份验证

  2. 数据提供程序创建一个共享,该共享是一个命名对象,包含在提供程序帐户的 Unity Catalog 元存储中注册的表的集合。

    有关详细信息,请参阅 为 OpenSharing 创建共享

  3. 数据提供程序为接收者授予对共享的访问权限。

    有关详细信息,请参阅 管理对 OpenSharing 数据共享(对于提供程序)的访问权限

  4. 在持有者令牌流程中,数据提供方通过安全通道将激活链接发送给接收者,并附带使用这些链接下载凭证文件的说明,该凭证文件将用于与数据提供方建立安全连接,以接收共享数据。

    有关详细信息,请参阅 “获取激活”链接

    在 OIDC 联合流中,收件人通过其 IdP 进行身份验证。 请参阅 为 OpenSharing 收件人启用 Open ID Connect(OIDC)联合身份验证

  5. 在持有者令牌流中,数据接收者遵循激活链接下载凭据文件,然后使用凭据文件访问共享数据。

    共享数据仅供读取。 用户可以使用其选择的平台或工具访问数据。 有关详细信息,请参阅 读取与持有者令牌共享的数据

    在 OIDC 联合流中,收件人通过其 IdP 进行身份验证。 请参阅 为 OpenSharing 收件人启用 Open ID Connect(OIDC)联合身份验证

提供方特定的配置

许多提供商都有自己的 OpenSharing 网络进行共享。 有关特定共享说明,请参阅以下示例:

云令牌和基于目录的访问

使用 Databricks-to-Open 共享来共享符合条件的 Delta 表时,Azure Databricks 会返回该表的云存储位置,以及收件人可用于直接从云存储读取数据的临时云凭据(云令牌)。 这称为 基于目录的访问模式 ,是 Databricks 到 Open 共享协议的一部分。 默认为符合资格要求的新共享资产启用它。 如果共享表不满足所有要求,则收件人使用预先签名的 URL 访问,就像正常一样。

有关资格要求和数据隐私注意事项,请参阅 云令牌资格

Databricks-to-Open 共享的提供程序设置和安全注意事项

使用 Databricks-to-Open 共享模型时,良好的令牌管理是安全地共享数据的关键:

  • 在 Azure Databricks 上打算在提供共享时使用 Databricks-to-Open 共享的数据提供商必须在为其 Unity Catalog 元存储启用 OpenSharing 时配置默认接收者令牌生命周期。 Databricks 建议为令牌配置有效期限。 请参阅 在元存储上启用 OpenSharing
  • 如果需要修改默认令牌生存期,请参阅修改收件人令牌生存期
  • 鼓励收件人安全地管理其下载的凭据文件。
  • 有关令牌管理和 Databricks-to-Open 共享安全性的详细信息,请参阅 “管理收件人令牌”。
  • 所有云环境类型都支持 Databricks 到 Open 共享。

数据提供程序可以通过指定 IP 访问列表来限制收件人访问特定的网络位置,从而提供额外的安全性。 请参阅使用 IP 访问列表限制 OpenSharing 接收者访问权限(Databricks-to-Open 共享)