OpenSharing を使用して共有されたデータにアクセスする (受信者向け)
このページでは、OpenSharing を使用して共有されたデータにアクセスする方法について説明しています。OpenSharing は複数の共有モデルをサポートしています:
- Unity Catalog が有効になっている Databricks ワークスペース ユーザー向けの Databricks-to-Databricks 共有
- Databricks-to-Open共有、あらゆるツールを使用するあらゆる受信者向け
- オープンからDatabricksへの共有: オープンソースのOpenSharingプロトコル を使用するプロバイダーが、Databricksを用いる受信者と共有する
OpenSharing およびデータ受信者
OpenSharing は、安全なデータ共有のためのオープン標準です。 この文脈では *データプロバイダー* と呼ばれる Databricks ユーザーは、Databricks の OpenSharing を使用して、*データ受信者* と呼ばれる組織外の個人またはグループとデータを共有できます。
共有プロトコル
データへのアクセス方法は、ご自身がDatabricksユーザーであるかどうか、およびデータプロバイダーが共有データをDatabricks間共有、Databricks-to-Open共有、またはOpen-to-Databricks共有のいずれかに構成したかどうかによって異なります。
Databricks-to-Databricks モデルでは 、 Unity Catalog が有効になっている Databricks ワークスペースのユーザーである必要があります。チームのメンバーがデータ プロバイダーにUnity Catalogメタストアの一意の識別子を提供すると、データ プロバイダーはそれを使用して安全な共有接続を作成します。共有データはワークスペースでアクセスできるようになります。必要に応じて、チームのメンバーがそのデータに対してきめ細かなアクセス制御を構成します。
Databricks からのオープン共有モデル では、共有データにアクセスするために、(Databricks を含む) お好きなツールを使用できます。データプロバイダーから安全なチャンネル経由でアクティベーションURLまたはポータルリンクが送信されます。それに従い、認証情報ファイルまたはURLをダウンロードすると、共有データにアクセスできます。
共有データはDatabricksによって直接提供されるものではなく、Databricks上で実行されているデータプロバイダーによって提供されます。
Open-to-Databricksモデルでは 、 Databricksを使ってオープンソースのOpenSharingプロトコルを使ってデータプロバイダーが共有したデータにアクセスできます。データプロバイダーは安全なチャンネルを通じて認証情報を送り、それをDatabricksにuploadします。カタログエクスプローラーやノートブックを使えば、共有されたデータにアクセスできます。
Databricks は、データ受信者による共有データの使用状況およびアクセス状況に関する情報(かかる情報に関連して認証情報ファイルを使用してデータにアクセスする個人または企業を特定することを含む)を収集し、該当するデータプロバイダーと共有する場合があります。
共有されているデータにアクセスする
データへのアクセス方法は、プロバイダーが使用する共有プロトコルによって異なります。
Databricks-to-Databricksモデルでアクセスを取得する
Databricks-to-Databricks モデルでは、プロバイダーがデータ共有を行った方法に応じて、データへのアクセス方法が異なります。
データへのアクセス権を取得したあと、チームのメンバーが、ユーザー向けにそのデータに対するきめ細かなデータアクセスを構成できます。詳細については、Databricks-to-Databricks OpenSharingを使用して共有されたデータを読み取る(受信者向け)を参照してください。
Eメールを使用したアクセス
ベータ版
この機能はベータ版です。ワークスペース管理者は、 プレビュー ページからこの機能へのアクセスを制御できます。Databricksのプレビューを管理するを参照してください。
プロバイダーがEメールを使用してデータを共有した場合、Databricks から「<Organization> があなたとデータを共有しました」という件名のEメールが送信されます。Eメールには、セキュリティで保護されたアクティベーション Link が含まれています。プロバイダーが Databricks 共有とオープン共有の両方を許可している場合は、データへのアクセス方法を選択できます。
これらの共有を受け入れるには:
- Eメールを開き、 [既存の Databricks アカウントを使用する] または [無料の Databricks アカウントを作成する] をクリックします。
- OpenSharing の Eメールを受け取ったのと同じ Eメール アドレスを使用して、Databricks アカウントにログインするか、アカウントを作成します。
- Databricks のメタストアレベルで CREATE PROVIDER 権限を持っている必要があります。必要に応じて権限をリクエストし、メタストア管理者が権限を付与するまで待ちます。
- 共有を配置するメタストアを指定します。
共有識別子を使用したアクセス
プロバイダーから 共有識別子 を使用してデータを共有するよう求められた場合は、選択したワークスペースにアタッチされているUnity Catalogメタストアの識別子を見つける必要があります。プロバイダーに送信して、あなたを表す受信者オブジェクトを作成できるようにします。共有を作成してアクセス権を付与すると、データに対する読み取り専用アクセス権が自動的に付与されます。
共有識別子は、メタストアのクラウド、リージョン、およびUUID (メタストアの一意の識別子) で構成される文字列であり、<cloud>:<region>:<uuid> の形式をとります。
たとえば、次のスクリーンショットでは、完全な共有識別子は aws:us-west-2:19a84bee-54bc-43a2-87de-023d0ec16016 です。

カタログエクスプローラ、Databricks Unity Catalog CLI、またはDatabricksノートブックもしくはDatabricks SQLクエリー内のCURRENT_METASTORE SQL関数を使用して、共有識別子を見つけます。
- Catalog Explorer
- SQL
- CLI
-
Databricks ワークスペースで、
カタログ をクリックします。
-
カタログ ウィンドウの上部にある
歯車アイコンをクリックし、 OpenSharing を選択します。
または、右上隅の Share > OpenSharing をクリックします。
-
自分と共有 tab で、右上の Databricks 共有組織名をクリックし、 共有識別子をコピー を選択します。
共有データへのアクセスに使用するワークスペースのコンピュートは、標準または専用アクセスモードでノートブックまたはクエリーを実行する必要があります。
ノートブックまたはDatabricks SQLクエリーエディタで次のコマンドを実行します:
SELECT CURRENT_METASTORE();
Databricks CLIを使用して、以下のコマンドを実行します。共有識別子が global_metastore_id として返されます。
databricks metastores summary
Databricksとオープン共有モデルでアクセスする
Databricksとオープン共有モデルの場合:
-
データプロバイダーから安全なチャンネル経由でアクティベーションURLまたはポータルURLが送信されるか、DatabricksからEメールが送信されます。Eメールの招待状を転送することはできません。Follow the Link to download a credential file or to access the data shared with you.
Bearer トークンと OAuth クライアント資格情報の両方がサポートされています。
アクティベーションリンクを誰にも共有しないでください。資格情報ファイルは1度のみダウンロードできます。 資格情報ファイルが既にダウンロードされている状態で、再度アクティベーションリンクにアクセスすると、**[Download Credential File]** ボタンは無効になります。
使用する前にアクティベーションリンクを紛失した場合は、データプロバイダーに連絡してください。 2. 認証情報ファイルを安全な場所に保管してください。
共有データへのアクセス権を持つべきユーザーグループ以外の人には、認証情報ファイルを共有しないでください。組織内の誰かと共有する必要がある場合は、Databricksはパスワードマネージャーの使用をお勧めします。
Open-to-Databricks モデルでアクセスする
Open-to-Databricksモデルでは、
-
データプロバイダーは、共有を作成し、共有にアセットを追加するために、オープンソースのOpenSharingプロトコルを使用します。
-
データプロバイダーは、アクティベーションURL(セキュアなチャンネル経由)またはポータルURLのいずれかを送信します。それに従って、資格情報ファイル、または共有データにアクセスできるURLをダウンロードします。
Bearer トークンと OAuth クライアント資格情報の両方がサポートされています。
アクティベーションリンクを誰にも共有しないでください。資格情報ファイルは1度のみダウンロードできます。 資格情報ファイルが既にダウンロードされている状態で、再度アクティベーションリンクにアクセスすると、**[Download Credential File]** ボタンは無効になります。
使用する前にアクティベーションリンクを紛失した場合は、データプロバイダーに連絡してください。 3. 資格情報ファイルを Databricks ワークスペースに保存します。
資格情報ファイルを、共有データにアクセスする必要があるユーザーグループ外の誰とも共有しないでください。
共有データを読み取ります。
OpenSharingを使用して安全に共有されたデータを読み取る方法は、資格情報ファイルを受け取ったか、またはDatabricksワークスペースを使用しており、データプロバイダーに共有識別子を提供したか(Databricks-to-Databricksモデル)によって異なります。
共有の読み取り時にデータ資産が存在しないというエラーが表示された場合は、データ資産「存在しません」エラーを参照してください。
認証情報ファイルを使用して共有データを読む(Databricksからオープン共有、またはオープン共有からDatabricksへの共有)
ベアラートークンでデータが共有されている場合は、downloadした認証情報ファイルを使ってデータ提供者のアカウントに認証し、共有データを読み取ってください。基盤となるトークンが有効であり、プロバイダーがデータを共有し続ける限りアクセスは持続します。プロバイダーはトークンの有効期限とローテーションを管理します。トークンの有効期限は作成から最大1年間です。データの更新はほぼリアルタイムでご利用いただけます。共有データの読み取りやコピーはできますが、ソースデータは変更できません。
Databricks を使用して共有データにアクセスして読み取るには、「プロバイダーをインポートして Databricks で共有データを読み取る」を参照してください。
Apache Spark、Pandas、Power BI を使用して共有データにアクセスして読み取るには、ベアラー トークンを使用して共有されたデータを読み取るを参照してください。
Databricks とオープン共有間の OIDC フェデレーションを使用して共有データを読み取る
OIDCフェデレーションを備えたDatabricks-to-Open共有プロトコルを使用してデータが共有された場合、送信されたURLを使用してデータプロバイダーのアカウントに認証し、共有データを読み取ります。プロバイダーがデータを共有し続ける限り、アクセスは維持されます。データの更新は、ほぼリアルタイムで利用可能です。共有データを読み取ったりコピーを作成したりできますが、ソースデータを変更することはできません。
Tableau および Power BI で OIDC トークンフェデレーションフローを使用して共有データにアクセスして読み取る方法については、「U2M フローで Open ID Connect (OIDC) フェデレーションを使用して共有データを読み取る」を参照してください。Python クライアントアプリで OIDC トークンフェデレーションフローを使用して共有データにアクセスして読み取る方法については、「M2M フローで Open ID Connect (OIDC) フェデレーションを使用して共有データを読み取る」を参照してください。
Databricks-to-Databricks 共有を使用して共有データを読み取る
Databricks-to-Databricks モデルを使用してデータが共有されている場合、共有データにアクセスするために認証情報ファイルは必要ありません。Databricks が安全な接続を処理し、共有データは Databricks ワークスペースで自動的に検出可能になります。
Databricksワークスペースでその共有データを検索、読み取り、管理する方法を学ぶには、「Databricks-to-Databricks OpenSharing を使用して共有されたデータを読み取る (受信者向け)」を参照してください。
共有データの使用状況を監査する
Databricks ワークスペースにアクセスできる場合、Databricks 監査ログを使用して、組織内の誰が OpenSharing を使ってどのデータにアクセスしているかを把握できます。「データ共有の監査と監視」を参照してください。