メインコンテンツまでスキップ

OpenSharing Databricks間オープン共有プロトコルとは何ですか?

このページでは、プロバイダーが OpenSharing Databricks-to-Open 共有プロトコルを使用して、Unity Catalog対応の Databricks ワークスペースのデータを、任意のコンピューティング プラットフォーム上の任意の場所のすべてのユーザーと共有する方法の概要について説明します。データ受信者(データが共有されているユーザーまたはグループ)の場合は、代わりにOpenSharing を使用して共有されたデータにアクセスする(受信者向け)を参照してください。

OpenSharing Databricks間オープン共有プロトコルは誰が使用すべきですか?

OpenSharingを使用してデータを共有する方法は3つあります。

  1. Databricks-to-Open 共有プロトコル (この記事で説明)を使用すると、Unity Catalog対応のDatabricksワークスペースで管理するデータを、任意のコンピューティングプラットフォーム上のユーザーと共有できます。

    このアプローチでは、Databricks に組み込まれている OpenSharing サーバーを使用します。Unity Catalog を使用してデータを管理していて、Databricks を使用していないユーザーや Unity Catalog 対応の Databricks ワークスペースにアクセスできないユーザーとデータを共有したい場合に便利です。プロバイダー側でのUnity Catalogとの統合により、プロバイダーのセットアップとガバナンスが簡素化されます。

  2. Databricksの有無に関わらず、あらゆるプラットフォームからあらゆるプラットフォームへの共有を可能にする、オープンソースのOpenSharingサーバーの顧客管理実装です。

    オープンソースプロジェクトをご覧ください。

  3. **Databricks-to-Databricks共有プロトコル**を使用すると、Unity Catalogが有効なワークスペースから、Unity Catalogが有効なDatabricksワークスペースにアクセスできるユーザーとデータを共有できます。

    OpenSharing Databricks-to-Databricks プロトコルとは」を参照してください。

OpenSharing の概要、およびこれらの3つのアプローチに関する詳細情報については、「OpenSharing とは?」を参照してください。

OpenSharing Databricks間オープン共有のワークフロー

このセクションでは、Databricks-to-Open共有ワークフローの概要と、各ステップの詳細なドキュメントへのリンクを提供します。

OpenSharing Databricks-to-Open共有モデルでは:

  1. データプロバイダーは、共有するユーザーまたはユーザーグループを表す名前付きオブジェクトである受信者を作成します。

    データプロバイダーが受信者を作成する際、プロバイダーは長期間有効なベアラートークンまたはOpen ID Connect (OIDC) フェデレーションを使用して認証を設定します。プロバイダーがベアラートークンを使用している場合、Databricksは、データプロバイダーが受信者に送信して資格情報ファイルにアクセスできるように、資格情報ファイルとアクティベーションリンクを生成します。OIDCフェデレーションフローでは、受信側のIdPがプロバイダーによって作成されたポリシーに基づいて認証を管理します。

    詳細については、ベアラー トークンを使用して非Databricksユーザーの受信者オブジェクトを作成する (Databricksからオープン共有)またはOpen ID Connect (OIDC) フェデレーションをOpenSharing受信者向けに有効にするを参照してください。

  2. データプロバイダーは、プロバイダーのアカウントのUnityCatalogメタストアに登録されたテーブルのコレクションを含む名前付きオブジェクトである*シェア*を作成します。

    詳細については、OpenSharing の共有を作成を参照してください。

  3. データプロバイダーは受信者に共有へのアクセスを付与します。

    詳細については、OpenSharing データ共有へのアクセスを管理する (プロバイダー向け)を参照してください。

  4. ベアラトークンフローでは、データプロバイダーは、安全なチャンネルを介してアクティベーションリンクを受信者に送信します。これには、受信者が共有データを受信するためにデータプロバイダーとの安全な接続を確立する際に使用する資格情報ファイルをダウンロードするためのアクティベーションリンクの使用方法に関する手順も含まれます。

    詳細については、アクティベーションリンクを取得するを参照してください。

    OIDCフェデレーションフローでは、受信者はIdPを経由して認証されます。「オープン共有の受信者に対して Open ID Connect (OIDC) フェデレーションを有効にする」を参照してください。

  5. ベアラー トークンのフローでは、データの受信者がアクティベーションリンクをたどって資格情報ファイルをダウンロードし、その資格情報ファイルを使用して共有データにアクセスします。

    共有データは読み取り専用です。データは、任意のプラットフォームまたはツールを利用してアクセスできます。詳細については、Databricks とのオープン共有でのベアラー トークンを使用した共有データの読み取りを参照してください。

    OIDCフェデレーションフローでは、受信者はIdPを経由して認証されます。「オープン共有の受信者に対して Open ID Connect (OIDC) フェデレーションを有効にする」を参照してください。

プロバイダー固有の構成

多くのプロバイダーには、共有するための独自のオープン共有ネットワークがあります。特定の共有手順については、例えば、以下を参照してください。

クラウドトークンとディレクトリベースのアクセス

Databricks-to-Open Sharing を使用して対象となるDeltaテーブルを共有すると、Databricks は、受信者がクラウドストレージから直接データを読み取るために使用できる、一時的なクラウド認証情報(クラウドトークン)とともに、テーブルのクラウドストレージの場所を返します。これはディレクトリベースのアクセスモードと呼ばれ、Databricks-to-Open共有プロトコル の一部です。資格要件を満たす新しく共有されたアセットに対して、デフォルトで有効になります。共有テーブルがすべての要件を満たさない場合、受信者は通常どおり署名付き URL アクセスを使用します。

資格要件とデータプライバシーの考慮事項については、「クラウドトークンの資格」を参照してください。

Databricks からオープン共有へのプロバイダーのセットアップとセキュリティに関する考慮事項

Databricks-to-Open共有モデルを使用する場合、データを安全に共有するためには、適切なトークン管理が鍵となります。

  • Databricks のデータプロバイダーは、共有を提供する際に Databricks-to-Open 共有を使用する予定の場合、Unity Catalog メタストアで OpenSharing を有効にする際に、デフォルトの受信者トークンの有効期間を設定する必要があります。Databricks では、トークンの有効期限が切れるように構成することをお勧めします。「メタストアでOpenSharingを有効にする」を参照してください。
  • デフォルトのトークンの有効期間を変更する必要がある場合は、受信者トークンの有効期間を変更するを参照してください。
  • 受信者には、ダウンロードした資格情報ファイルを安全に管理するように促します。
  • トークン管理とDatabricks-to-Open 共有セキュリティに関する詳細については、「受信者トークンの管理」を参照してください。
  • Databricks-オープン間共有は、すべてのクラウド環境タイプ間でサポートされています。

データプロバイダーは、受信者の特定のネットワークの場所へのアクセスを制限するためにIPアクセスリストを割り当てて、追加のセキュリティを提供できます。IPアクセスリストを使用してOpenSharing受信者のアクセスを制限する(Databricks-to-Open sharing)を参照してください。