OpenSharing Databricks-to-Open 共有プロトコルとは

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

OpenSharing Databricks-to-Open Sharingプロトコルは、誰が使用すべきですか?

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

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

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

  2. オープンソースの OpenSharing サーバーのカスタマー マネージド実装 を使用すると、Databricks かどうかにかかわらず、任意のプラットフォームから任意のプラットフォームに共有できます。

    オープンソース プロジェクトを参照してください。

  3. Databricks 間共有プロトコルを使うと、Unity Catalog 対応のワークスペースから、同じくUnity Catalog 対応の Databricks ワークスペースにアクセス権を持つユーザーとデータを共有できます。

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

OpenSharing の概要と、これら 3 つの方法の詳細については、「 OpenSharing とは」を参照してください。

OpenSharing Databricks から Open への共有ワークフロー

このセクションでは、Databricks から Open への共有ワークフローの概要と、各手順の詳細なドキュメントへのリンクを示します。

OpenSharing の Databricks から Open への共有モデル:

  1. データ プロバイダーによって受信者が作成されます。これは、データ プロバイダーがデータを共有する相手であるユーザーまたはユーザー グループを表す名前付きオブジェクトです。

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

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

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

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

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

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

  4. ベアラー トークン フローでは、データ プロバイダーは、アクティブ化リンクを使用して共有データを受信するデータ プロバイダーとのセキュリティで保護された接続を確立するために受信者が使用する資格情報ファイルをダウンロードするための手順と共に、セキュリティで保護されたチャネル経由で受信者にアクティブ化リンクを送信します。

    詳細については、「 アクティブ化リンクを取得する」を参照してください。

    OIDC フェデレーション フローでは、受信者は IdP を使用して認証します。 OpenSharing 受信者の Open ID Connect (OIDC) フェデレーションを有効にするを参照してください。

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

    共有対象のデータは読み取り専用です。 ユーザーは、自分のプラットフォーム、または任意のツールを使用してデータにアクセスできます。 詳細については、「ベアラー トークンを使用した OpenSharing Databricks-to-Open sharing で共有されたデータを読み取る」を参照してください。

    OIDC フェデレーション フローでは、受信者は IdP を使用して認証します。 OpenSharing 受信者の Open ID Connect (OIDC) フェデレーションを有効にするを参照してください。

プロバイダー固有の構成

多くのプロバイダーには、共有用の独自の OpenSharing ネットワークがあります。 特定の共有手順については、次の例を参照してください。

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

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

適格性要件とデータ プライバシーに関する考慮事項については、 クラウド トークンの適格性に関するページを参照してください。

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

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

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

データ プロバイダーは、IP アクセス リストを割り当てて受信者のアクセスを特定のネットワークの場所に制限することによって、セキュリティを強化できます。 IP アクセス リストを使用した OpenSharing 受信者アクセスの制限 (Databricks から Open への共有) を参照してください。