Unity Catalog の特権とセキュリティ保護可能なオブジェクト
このページでは、Unity Catalog のセキュリティ保護可能なオブジェクトと、それらに適用される特権について説明します。Unity Catalog で特権を付与する方法については 、「特権の表示、付与、取り消し」を参照してください。
この記事では、Privilege Model バージョン 1.0 の Unity Catalog の特権と継承モデルについて説明します。パブリック プレビュー中 (2022 年 8 月 25 日より前) に Unity Catalog メタストアを作成した場合は、現在の継承モデルをサポートしていない以前の特権モデルを使用している可能性があります。Privilege Model バージョン 1.0 にアップグレードして、特権の継承を取得できます。「特権の継承へのアップグレード」を参照してください。
Unity Catalog のセキュリティ保護可能なオブジェクト
セキュリティ保護可能なオブジェクトは、Unity Catalogメタストアで定義され、プリンシパル(ユーザー、サービスプリンシパル、またはグループ)に権限を付与できるオブジェクトです。Unity Catalog内のセキュリティ保護可能なオブジェクトは階層構造です。
セキュリティ保護対象オブジェクトには次のものがあります。
-
METASTORE :メタデータのトップレベルコンテナです。各Unity Catalogメタストアでは、データを整理する3つのレベルの名前空間(
catalog
、schema
、table
)が公開されます。メタストアの権限を管理する場合は、SQLコマンドにメタストア名を含めません。Unity Catalogは、ワークスペースにアタッチされたメタストアに対して権限を付与または取り消します。たとえば、次のコマンドは、 engineering という名前のグループに、ワークスペースにアタッチされたメタストアにカタログを作成する能力を付与します。
SQLGRANT CREATE CATALOG ON METASTORE TO engineering
-
CATALOG :データ資産を整理するために使用されるオブジェクト階層の最初のレイヤー。 フォーリンカタログ は、レイクハウスフェデレーションシナリオで外部データシステム内のデータベースをミラーリングする特別なカタログタイプです。
-
SCHEMA :データベースとも呼ばれます。オブジェクト階層の第2層であり、テーブルとビューが格納されます。
-
TABLE: オブジェクト階層の最下位レベルでは、テーブルマネージドテーブル、外部テーブル、フォーリンテーブル、ストリーミングテーブル、オンラインテーブル、特徴量テーブル。 「 Databricks テーブル」を参照してください。
-
VIEW :スキーマに含まれる1つ以上のテーブルに対するクエリーから作成された読み取り専用オブジェクトです。
-
MATERIALIZED VIEW :スキーマ内に含まれる1つ以上のテーブルに対するクエリーから作成されたオブジェクト。その結果には、最後に更新されたときのデータの状態が反映されます。
-
メトリクス VIEW: 1 つ以上のデータソース (テーブル、ビュー、 SQL クエリ) に基づいて、ディメンションやメジャーなどの一連のメトリクス定義を定義する読み取り専用オブジェクト。 Unity Catalog メトリクスビューを参照してください。
-
VOLUME: 非構造化データの論理ボリューム。 外部 (選択したクラウド ストレージの外部ロケーションに格納) または 管理 (Databricks用に特別に作成したクラウド ストレージのストレージ コンテナーに格納) にすることができます。
-
FUNCTION: スキーマ内に含まれる ユーザー定義関数 または MLflow 登録モデル 。
-
モデル : MLflow に登録されたモデルは 、特定の種類の関数です。 モデルはカタログ エクスプローラで他の関数とは別にリストされますが、SQL を使用してモデルに対する権限を付与する場合は、
GRANT ON FUNCTION
を使用します。 -
EXTERNAL LOCATION :ストレージ資格情報への参照と、Unity Catalogメタストア内に含まれるクラウドストレージパスを含むオブジェクト。
-
外部メタデータ : 外部システム内のエンティティ ( Tableau ダッシュボードや Salesforce オブジェクトなど) のメタデータを含むオブジェクトで、カスタムデータリネージ設定に追加できるようにします。 「 Bring your own dataリネージ」を参照してください。
-
サービス CREDENTIAL: 外部サービスへのアクセスを提供する長期的なクラウド資格情報をカプセル化するオブジェクト。 Unity Catalogメタストアに含まれています。
-
STORAGE CREDENTIAL :Unity Catalogメタストアに含まれるクラウドストレージにアクセスするための長期的なクラウド資格情報をカプセル化するオブジェクト。
-
CONNECTION :レイクハウスフェデレーションシナリオで外部データベースシステムにアクセスするためのパスと資格情報を指定するオブジェクト。
-
SHARE :Delta Sharingを使用して共有するテーブルの論理グループ。共有はUnity Catalogメタストア内に含まれます。
-
RECIPIENT :Delta Sharingを使用してデータを共有できる組織またはユーザーグループを識別するオブジェクト。これらのオブジェクトはUnity Catalogメタストア内に含まれています。
-
PROVIDER :Delta Sharingを使用してデータを共有できるようにした組織を表すオブジェクト。これらのオブジェクトはUnity Catalogメタストア内に含まれています。
-
クリーンルーム : Databricksによって管理される、安全でプライバシー保護の環境を表すオブジェクトで、複数の関係者が互いのデータに直接アクセスすることなく共同作業を行うことができます。
Unity Catalog のセキュリティ保護可能なオブジェクト別の特権の種類
次の表に、Unity Catalog の各セキュリティ保護可能なオブジェクトに適用される特権の種類を示します。 Unity Catalog で特権を付与する方法については 、「特権の表示、付与、取り消し」を参照してください。
セキュリティ保護可能 | 権限 |
---|---|
メタストア |
|
カタログ |
すべてのユーザーは、デフォルトで 以下の権限タイプは、カタログ内の保護可能なオブジェクトに適用されます。これらの特権をカタログレベルで付与して、カタログ内の現在および将来のオブジェクトに適用することができます。
|
スキーマ |
以下の権限タイプは、スキーマ内のセキュリティ保護可能なオブジェクトに適用されます。これらの権限をスキーマレベルで付与して、スキーマ内の現在および将来のオブジェクトに適用できます。
|
テーブル |
|
マテリアライズドビュー |
|
ビュー |
|
ボリューム |
|
外部ロケーション |
|
外部メタデータ |
|
サービス資格情報 |
|
ストレージ資格情報 |
|
接続 |
|
関数 |
|
プロシージャ |
|
モデル | 登録モデルは機能の一種です。 |
共有 |
|
受信者 | なし |
プロバイダー | なし |
クリーンルーム |
|
一般的な Unity Catalog の特権の種類
このセクションでは、Unity Catalog に一般的に適用される特権の種類について詳しく説明します。 Unity Catalog で特権を付与する方法については 、「特権の表示、付与、取り消し」を参照してください。
ALL PRIVILEGES
適用可能なオブジェクトタイプ: CATALOG
、 EXTERNAL LOCATION
、 EXTERNAL METADATA
、 SERVICE CREDENTIAL
、 STORAGE CREDENTIAL
、 SCHEMA
、 FUNCTION
(モデルを含む)、 PROCEDURE
、 TABLE
、 MATERIALIZED VIEW
、 VIEW,
VOLUME
セキュリティ保護可能なオブジェクトとその子オブジェクトに適用されるすべての権限を、明示的に指定せずに付与または取り消すために使用されます。
オブジェクトに対するALL PRIVILEGES
が付与された場合、付与された時点で適用可能な各権限が個別にユーザーに付与されるのではなく、権限チェックが行われた時点で使用可能なすべての権限として展開されます。つまり、Databricksが新しい権限と新しいセキュリティ保護可能なオブジェクトをリリースすると、すでに付与されていたALL PRIVILEGES
には、セキュリティ保護可能なオブジェクト、その既存の子オブジェクト、および新しい子オブジェクトに適用可能な新しい権限が自動的に含まれることになります。
偶発的なデータ流出や権限昇格を回避するために、 ALL PRIVILEGES
には EXTERNAL USE SCHEMA
、 EXTERNAL USE LOCATION
、または MANAGE
権限は含まれません。
ALL PRIVILEGES
が取り消されると、ALL PRIVILEGES
付与とそれによって暗黙的に付与される個々の特権の両方が削除されます。MANAGE
、EXTERNAL USE LOCATION
、EXTERNAL USE SCHEMA
などALL PRIVILEGES
に属さない権限は影響を受けない。
この権限は、階層の上位レベルに適用するとより強力になります。たとえば、「GRANT ALL PRIVILEGES ON CATALOG main TO analysts
」では、カタログ内の既存および将来の保護可能なすべてのオブジェクトに対する既存および将来のすべての権限がアナリストチームに付与されます。
ACCESS
適用可能なオブジェクトタイプ: SERVICE CREDENTIAL
ユーザーがサービスの資格情報を使用して、外部のサービスまたはサービスにアクセスできるようにします。
APPLY TAG
適用可能なオブジェクトタイプ: CATALOG
、 SCHEMA
、 TABLE
、 VOLUME
、 MATERIALIZED VIEW
、 VIEW
、 FUNCTION
ユーザーは、オブジェクトにタグを追加および編集できます。 テーブルまたはビューに APPLY TAG
を付与すると、列のタグ付けも有効になります。 登録済みモデルに APPLY TAG
を付与すると、モデル バージョンのタグ付けも有効になります。
ユーザーは親カタログ上でUSE CATALOG
権限、親スキーマ上でUSE SCHEMA
権限も持っている必要があります。
管理対象タグを Unity Catalog セキュリティ保護可能なオブジェクトに適用するには、管理対象タグに対する ASSIGN アクセス許可も必要です。「 管理対象タグの権限の管理」を参照してください。
BROWSE
適用可能なオブジェクトタイプ:CATALOG
、 CLEAN ROOM
、 EXTERNAL METADATA
、 EXTERNAL LOCATION
ユーザーは、カタログエクスプローラ、スキーマブラウザ、検索結果、リネージグラフ、 information_schema
、および REST APIを使用して、オブジェクトのメタデータを表示できます。 この可視性により、ユーザーはオブジェクトを検出し、オブジェクトへのアクセスを要求できます。
ユーザーには、親カタログに対するUSE CATALOG
権限や親スキーマに対するUSE SCHEMA
権限は必要ありません。
カタログエクスプローラーを使用して作成された新しいカタログでは、デフォルトですべてのユーザーにBROWSE
権限が付与されます。権限は必要に応じて取り消すことができます。SQL文、REST API、またはDatabricks CLIを使用して作成されたカタログでは、デフォルトでBROWSE
権限が付与されません。明示的に付与する必要があります。
Databricks では、カタログの BROWSE
を All account users
グループに付与して、オブジェクトを検出可能にし、すべてのユーザーがオブジェクトへのアクセスを要求できるようにすることをお勧めします。
オブジェクトに対する BROWSE
権限のみを持つユーザーは、SQL を使用してメタデータを探索する機能が制限されています。
CREATE CATALOG
適用可能なオブジェクトタイプ: Unity Catalog メタストア
ユーザーは、 Unity Catalog メタストアにカタログを作成できます。 フォーリンカタログを作成するには、フォーリンカタログを含む接続またはメタストアに対する CREATE フォーリンカタログ 権限も必要です。
CREATE CLEAN ROOM
適用可能なオブジェクトタイプ: Unity Catalog メタストア
ユーザーは、基礎となるデータを共有することなく、他の組織とプロジェクトを安全にコラボレーションするためのクリーンルームを作成することができます。
CREATE CONNECTION
適用可能なオブジェクトタイプ: Unity Catalog メタストア、 SERVICE CREDENTIAL
ユーザーは、レイクハウスフェデレーションのシナリオで外部データベースへの接続を作成できます。 サービス資格情報を使用して接続を作成するには、ユーザーはメタストアとサービス資格情報の両方に対してこの特権を持っている必要があります。
CREATE EXTERNAL LOCATION
適用可能なオブジェクトタイプ: Unity Catalog メタストア、 STORAGE CREDENTIAL
外部ロケーションを作成するには、ユーザーがメタストアと外部ロケーションで参照されるストレージ資格情報の両方に対してこの権限を持っている必要があります。
外部メタデータの作成
適用可能なオブジェクトタイプ: Unity Catalog メタストア
ユーザーは、カスタムリネージで使用するための外部メタデータ保護可能なデータを作成できます。 リネージ関係を外部メタデータオブジェクトに追加するには、ユーザーは、関係を指定するUnity Catalogオブジェクトに対する権限に加えて、外部メタデータオブジェクトに対するMODIFY
権限を持っている必要があります。
CREATE EXTERNAL TABLE
適用可能なオブジェクトタイプ:EXTERNAL LOCATION
、 STORAGE CREDENTIAL
ユーザーは、外部ロケーションまたはストレージの資格情報を使用して、クラウド テナントに直接外部テーブルを作成できます。 Databricks では、ストレージ資格情報ではなく、外部ロケーションに対してこの特権を付与することをお勧めします (スコープがパスに設定されているため、ユーザーがクラウド テナントで外部テーブルを作成できる場所をより詳細に制御できます)。
CREATE EXTERNAL VOLUME
適用可能なオブジェクトタイプ: EXTERNAL LOCATION
ユーザーは外部ロケーションを使用して外部ボリュームを作成できます。
CREATE FOREIGN CATALOG
適用可能なオブジェクトタイプ: CONNECTION
レイクハウスフェデレーションシナリオで、外部データベースへの接続を使用してフォーリンカタログを作成できるようにします。
CREATE FOREIGN SECURABLE
適用可能なオブジェクトタイプ: EXTERNAL LOCATION
フォーリンカタログを作成しているユーザーは、外部ロケーションでカバーされる 許可パス を指定できます。
また、ユーザーは Unity Catalog メタストアにCREATE CATALOG
を持ち、接続にCREATE FOREIGN CATALOG
を持っている必要があります。
CREATE FUNCTION
適用可能なオブジェクトタイプ: SCHEMA
ユーザーは、スキーマに関数またはプロシージャを作成できます。特権は継承されるため、カタログに対して CREATE FUNCTION
を付与することもでき、これにより、ユーザーはカタログ内の既存または将来のスキーマに関数またはプロシージャを作成できます。
ユーザーは親カタログ上でUSE CATALOG
権限、親スキーマ上でUSE SCHEMA
権限も持っている必要があります。
CREATE MODEL
適用可能なオブジェクトタイプ: SCHEMA
ユーザーは、スキーマに MLflow 登録済みモデル (FUNCTION の一種) を作成できます。 権限は継承されるため、カタログに対して CREATE MODEL
を付与することもでき、これにより、ユーザーはカタログ内の既存または将来のスキーマに登録されたモデルを作成できます。
ユーザーは親カタログ上でUSE CATALOG
権限、親スキーマ上でUSE SCHEMA
権限も持っている必要があります。
CREATE MODEL VERSION
適用可能なオブジェクトタイプ: MODEL
ユーザーは、 MLflow 登録されたモデル (FUNCTION の一種) の新しいバージョンを登録できるようにします。 モデル バージョンに対してタグを実行、変更、または追加する権限をユーザーに付与しません。
ユーザーは親カタログ上でUSE CATALOG
権限、親スキーマ上でUSE SCHEMA
権限も持っている必要があります。
CREATE MANAGED STORAGE
適用可能なオブジェクトタイプ: EXTERNAL LOCATION
ユーザーは、カタログまたはスキーマレベルでマネージドテーブルを格納する場所を指定し、メタストアのデフォルトのルートストレージをオーバーライドできます。
CREATE SCHEMA
適用可能なオブジェクトタイプ: CATALOG
ユーザーがスキーマを作成できるようにします。ユーザーは、カタログに対するUSE CATALOG
権限も持っている必要があります。
CREATE SERVICE CREDENTIAL
適用可能なオブジェクトタイプ: Unity Catalog メタストア
ユーザーは、 Unity Catalog メタストアにサービス資格情報を作成できます。
CREATE STORAGE CREDENTIAL
適用可能なオブジェクトタイプ: Unity Catalog メタストア
ユーザーがUnity Catalogメタストアにストレージ資格情報を作成できるようにします。
CREATE TABLE
適用可能なオブジェクトタイプ: SCHEMA
ユーザーがスキーマにテーブルやビューを作成できるようにします。権限は継承されるため、カタログに対するCREATE TABLE
を付与することもできます。これにより、ユーザーはカタログ内の既存または将来のスキーマでテーブルやビューを作成できます。
ユーザーは、親カタログに対するUSE CATALOG
権限と、親スキーマに対するUSE SCHEMA
権限も持っている必要があります。
CREATE MATERIALIZED VIEW
適用可能なオブジェクトタイプ: SCHEMA
ユーザーがスキーマにマテリアライズドビューを作成できるようにします。権限は継承されるため、カタログに対するCREATE MATERIALIZED VIEW
を付与することもできます。これにより、ユーザーはカタログ内の既存または将来のスキーマでテーブルやビューを作成できます。
ユーザーは、親カタログに対するUSE CATALOG
権限と、親スキーマに対するUSE SCHEMA
権限も持っている必要があります。
CREATE VOLUME
適用可能なオブジェクトタイプ: SCHEMA
ユーザーがスキーマにボリュームを作成できるようにします。権限は継承されるため、カタログに対してCREATE VOLUME
を付与することもできます。これにより、ユーザーはカタログ内の既存または将来のスキーマでボリュームを作成できます。
また、ユーザーは、ボリュームの親カタログに対する USE CATALOG
権限と、その親スキーマに対する USE SCHEMA
権限も持っている必要があります。
EXECUTE
適用可能なオブジェクトタイプ: FUNCTION
、モデル
ユーザーが親カタログに対するUSE CATALOG
、親スキーマに対するUSE SCHEMA
を持っている場合、ユーザーがユーザー定義関数を呼び出したり、推論用のモデルをロードしたりできるようにします。関数の場合、EXECUTE
は関数定義とメタデータを表示する権限を付与します。登録済みモデルの場合、EXECUTE
は、登録済みモデルの全バージョンのメタデータを閲覧し、モデルファイルをダウンロードする権限を付与します。
権限は継承されるため、カタログまたはスキーマに対するEXECUTE
権限をユーザーに付与すると、カタログまたはスキーマ内の現在および将来のすべての機能に対するEXECUTE
権限が自動的にユーザーに付与されます。
EXECUTE CLEAN ROOM TASK
適用可能なオブジェクトタイプ: CLEAN ROOM
ユーザーがクリーンルーム内でタスク(ノートブック)を実行できるようにします。また、ユーザーがクリーンルームの詳細を表示できるようにもします。
外部使用場所
適用可能なオブジェクトタイプ: EXTERNAL LOCATION
Unity Catalog open APIs または Apache Sparkを使用して、外部処理エンジンからUnity Catalog外部ロケーションにアクセスするための一時的な資格情報をユーザーに付与できます。
外部ロケーションに対する MANAGE
権限を持つユーザーのみが、この権限を付与できます。
偶発的なデータ流出を回避するために、 ALL PRIVILEGES
には EXTERNAL USE LOCATION
権限が含まれておらず、外部ロケーション所有者には デフォルト によってこの権限がありません。
「Unity Catalog への外部データ アクセスを有効にする」を参照してください。
EXTERNAL USE SCHEMA
プレビュー
この機能は パブリック プレビュー段階です。
適用可能なオブジェクトタイプ: SCHEMA
Unity CatalogオープンAPIまたはIceberg REST APIを使用して、外部処理エンジンからUnity Catalogテーブルにアクセスするための一時的な資格情報をユーザーに付与できます。
この権限を付与できるのは、カタログの所有者だけです。
偶発的なデータ流出を防ぐため、 ALL PRIVILEGES
には EXTERNAL USE SCHEMA
権限が含まれておらず、スキーマの所有者にはデフォルトでこの権限がありません。
「Unity Catalog への外部データ アクセスを有効にする」を参照してください。
MANAGE
適用可能なオブジェクトタイプ: CATALOG
、 EXTERNAL LOCATION
、 EXTERNAL METADATA
、 SERVICE CREDENTIAL
、 STORAGE CREDENTIAL
、 SCHEMA
、 FUNCTION
(モデルを含む)、 CONNECTION
、 TABLE
、 MATERIALIZED VIEW
、 VIEW,
VOLUME
、 CLEAN ROOM
プレビュー
この機能は パブリック プレビュー段階です。
ユーザーは、権限の表示と管理、所有権の譲渡、オブジェクトの削除、および名前の変更を行うことができます。 MANAGE
はオブジェクトの所有権と似ていますが、 MANAGE
権限を持つユーザーには、そのオブジェクトに対するすべての権限が自動的に付与されるわけではありません (ただし、自分自身に権限を付与することはできます)。
また、ユーザーは、オブジェクトの親カタログに対する USE CATALOG
権限と、その親スキーマに対する USE SCHEMA
権限も必要です。
ALL PRIVILEGES
MANAGE
権限は含まれません
MANAGE ALLOWLIST
適用可能なオブジェクトタイプ: Unity Catalog メタストア
ユーザーは、標準アクセスモードでUnity Catalog対応クラスターを管理する許可リスト内のinitスクリプト、JAR、および Maven 座標のパスを追加または変更できます。 標準アクセスモード (旧称共有アクセスモード)のコンピュートにおけるライブラリとinitスクリプトの許可リストを参照してください。
MODIFY
適用可能なオブジェクトタイプ:EXTERNAL METADATA
、 TABLE
ユーザーがテーブルに対してSELECT
、親カタログに対してUSE CATALOG
、親スキーマに対してUSE SCHEMA
を持っている場合、そのユーザーはテーブルのデータを追加、更新、削除できます。
権限は継承されるため、カタログまたはスキーマに対するMODIFY
権限をユーザーに付与すると、カタログまたはスキーマ内の現在および将来のすべてのテーブルに対するMODIFY
権限が自動的にユーザーに付与されます。
MODIFY
フォーリンテーブルは読み取り専用であるため、フォーリンテーブルで付与することはできません。
MODIFY CLEAN ROOM
適用可能なオブジェクトタイプ: CLEAN ROOM
ユーザーが、データ資産の追加と削除、ノートブックの追加と削除、コメントの更新など、クリーンルームを更新できるようにします。また、ユーザーがクリーンルームの詳細を表示できるようにもします。
READ FILES
適用可能なオブジェクトタイプ: EXTERNAL LOCATION
READ FILES
ユーザーは、外部ロケーションとして構成された Cloud Object Storage からファイルを直接読み取ることができます。 Databricks では、この方法に反対することをお勧めします。代わりに、クラウド・オブジェクト・ストレージ内のデータへの読み取りアクセスを、ボリュームと READ VOLUME
権限を使用して管理する必要があります。詳細については、「 外部ロケーション」を参照してください。
READ VOLUME
適用可能なオブジェクトタイプ: VOLUME
ユーザーが親カタログに対してUSE CATALOG
、親スキーマに対してUSE SCHEMA
を持っている場合、そのユーザーはボリューム内に格納されているファイルとディレクトリを読み取ることができます。
権限は継承されます。ユーザーにカタログまたはスキーマに対するREAD VOLUME
権限を付与できる場合、そのユーザーにはカタログまたはスキーマ内の現在および将来のすべてのボリューム対するREAD VOLUME
権限が自動的に付与されます。
REFRESH
適用可能なオブジェクトタイプ: MATERIALIZED VIEW
ユーザーが親カタログに対するUSE CATALOG
、親スキーマに対するUSE SCHEMA
を持っている場合、そのユーザーがマテリアライズドビューを更新できるようにします。
権限は継承されます。カタログまたはスキーマに対するREFRESH
権限をユーザーに付与する場合、そのユーザーにはカタログまたはスキーマ内の現在および将来のすべてのマテリアライズドビュー対するREFRESH
権限が自動的に付与されます。
SELECT
適用可能なオブジェクトタイプ:TABLE
、 VIEW
、 MATERIALIZED VIEW
、 SHARE
テーブルまたはビューに適用すると、ユーザーが親カタログに対してUSE CATALOG
、親スキーマに対してUSE SCHEMA
持っている場合、そのユーザーはテーブルまたはビューから選択できるようになります。共有に適用すると、受信者が共有から選択できるようになります。
権限は継承されるため、カタログまたはスキーマに対するSELECT
権限をユーザーに付与すると、カタログまたはスキーマ内の現在および将来のすべてのテーブルおよびビューに対するSELECT
権限が自動的にユーザーに付与されます。
USE CATALOG
適用可能なオブジェクトタイプ: CATALOG
この権限はカタログ自体へのアクセスを許可するものではありませんが、ユーザーがカタログ内の任意のオブジェクトを操作するために必要です。たとえば、テーブルからデータを選択するには、ユーザーはそのテーブルに対するSELECT
権限と、その親カタログに対するUSE CATALOG
権限、さらにその親スキーマに対するUSE SCHEMA
権限を持っている必要があります。
これは、カタログの所有者が、個々のスキーマとテーブルの所有者が生成するデータを共有できる範囲を制限できるようにする場合に便利です。たとえば、テーブルの所有者が別のユーザーにSELECT
権限を付与する場合、そのユーザーには、親カタログに対するUSE CATALOG
権限と親スキーマに対するUSE SCHEMA
権限も付与されていない限り、テーブルへの読み取りアクセスは許可されません。
親カタログに対する USE CATALOG
権限は、ユーザーがそのカタログに対する BROWSE
権限を持っている場合、オブジェクトのメタデータを読み取るためには必要ありません。
USE CONNECTION
適用可能なオブジェクトタイプ: CONNECTION
ユーザーは、レイクハウスフェデレーションシナリオで外部データベースへの接続に関する詳細を一覧表示および表示できます。接続のフォーリンカタログを作成するには、接続に対するCREATE FOREIGN CATALOG
または接続の所有権が必要です。
USE SCHEMA
適用可能なオブジェクトタイプ: SCHEMA
この権限はスキーマ自体へのアクセスを許可するものではありませんが、ユーザーがスキーマ内の任意のオブジェクトを操作するために必要です。たとえば、テーブルからデータを選択するには、ユーザーはそのテーブルに対するSELECT
権限と、その親スキーマに対するUSE SCHEMA
権限と、その親カタログに対するUSE CATALOG
を持っている必要があります。
権限は継承されるため、カタログに対するUSE SCHEMA
権限をユーザーに付与すると、カタログ内の現在および将来のすべてのスキーマに対するUSE SCHEMA
権限が自動的にユーザーに付与されます。
これは、スキーマの所有者が、個々のテーブルの所有者が生成したデータを共有できる範囲を制限できるようにする場合に便利です。たとえば、テーブル所有者が別のユーザーに SELECT
権限を付与する場合、そのユーザーには、親スキーマに対する USE SCHEMA
権限と親カタログに対する USE CATALOG
権限も付与されていない限り、テーブルへの読み取りアクセスは許可されません。
親スキーマに対する USE SCHEMA
権限は、ユーザーがそのスキーマの親カタログに対する BROWSE
権限を持っている場合、オブジェクトのメタデータを読み取るためには必要ありません。
WRITE FILES
適用可能なオブジェクトタイプ: EXTERNAL LOCATION
Databricks では、ボリュームと WRITE VOLUME
特権を使用して、クラウド オブジェクト ストレージ内のデータへの書き込みアクセスを管理することをお勧めします。
WRITE FILES
ユーザーは、外部ロケーションとして構成された Cloud Object Storage にファイルを直接書き込むことができます。 詳細については、「 マネージド ボリュームと外部ボリューム」を参照してください。
WRITE VOLUME
適用可能なオブジェクトタイプ: VOLUME
ユーザーがボリュームの親カタログに対してUSE CATALOG
、親スキーマに対してUSE SCHEMA
も持っている場合、そのユーザーはボリューム内に格納されているファイルとディレクトリを追加、削除、または変更できます。
権限は継承されます。ユーザーにカタログまたはスキーマに対するWRITE VOLUME
権限を付与できる場合、そのユーザーにはカタログまたはスキーマ内の現在および将来のすべてのボリューム対するWRITE VOLUME
権限が自動的に付与されます。
Delta Sharing または Databricks Marketplace にのみ適用される特権の種類
このセクションでは、Delta Sharingにのみ適用される権限タイプについて詳しく説明します。
CREATE PROVIDER
適用可能なオブジェクトタイプ: Unity Catalog メタストア
ユーザーは、メタストアに Delta Sharing プロバイダー オブジェクトを作成できます。プロバイダーは、Delta Sharing を使用してデータを共有している組織またはユーザーのグループを識別します。プロバイダーの作成は、受信者の Databricks アカウントのユーザーによって実行されます。「Delta Sharing とは」を参照してください。
CREATE RECIPIENT
適用可能なオブジェクトタイプ: Unity Catalog メタストア
ユーザーは、メタストアに Delta Sharing 受信者オブジェクトを作成できます。受信者は、Delta Sharing を使用してデータを共有できる組織またはユーザーのグループを識別します。受信者の作成は、プロバイダーの Databricks アカウントのユーザーによって実行されます。「Delta Sharing とは」を参照してください。
CREATE SHARE
適用可能なオブジェクトタイプ: Unity Catalog メタストア
ユーザーはメタストアに共有を作成できます。共有は、Delta Sharingを使用して共有するテーブルの論理グループです
SET SHARE PERMISSION
適用可能なオブジェクトタイプ: Unity Catalog メタストア
Delta Sharingでは、この権限をUSE SHARE
およびUSE RECIPIENT
(または受信者の所有権)と組み合わせることで、プロバイダーユーザーが受信者に共有へのアクセスを許可できるようになります。USE SHARE
と組み合わせると、共有の所有権を別のユーザー、グループ、またはサービスプリンシパルに譲渡できるようになります。
USE MARKETPLACE ASSETS
適用可能なオブジェクトタイプ: Unity Catalog メタストア
すべてのUnity Catalogメタストアに対してデフォルトで有効になっています。 Databricks Marketplaceでは、この権限により、ユーザーはMarketplaceのリストで共有されているデータ製品に即座にアクセスしたり、アクセスを要求したりすることができます。また、プロバイダーがデータ製品を共有するときに作成される読み取り専用カタログにユーザーがアクセスすることもできます。この権限がない場合、ユーザーにはCREATE CATALOG
権限とUSE PROVIDER
権限、またはメタストア管理者ロールが必要になります。これにより、これらの強力な権限を持つユーザーの数を制限できます。
USE PROVIDER
適用可能なオブジェクトタイプ: Unity Catalog メタストア
Delta Sharingでは、受信者ユーザーに、受信者のメタストア内のすべてのプロバイダーとその共有への読み取り専用アクセス権を付与します。CREATE CATALOG
権限と組み合わせると、この権限により、メタストア管理者ではない受信者ユーザーでも共有をカタログとしてマウントできるようになります。これにより、強力なメタストア管理者ロールを持つユーザーの数を制限できます。
USE RECIPIENT
適用可能なオブジェクトタイプ: Unity Catalog メタストア
Delta Sharingでは、プロバイダーのユーザーに、プロバイダーのメタストア内のすべての受信者とその共有への読み取り専用アクセス権を付与します。これにより、メタストア管理者ではないプロバイダーユーザーでも、受信者の詳細、受信者の認証ステータス、プロバイダーが受信者と共有した共有のリストを見ることができます。
Databricks Marketplace では、これにより、プロバイダー ユーザーはプロバイダー コンソールでリストとコンシューマー要求を表示できます。
USE SHARE
適用可能なオブジェクトタイプ: Unity Catalog メタストア
Delta Sharing では、プロバイダー メタストアで定義されているすべての共有に対する読み取り専用アクセス権をプロバイダー ユーザーに付与します。これにより、メタストア管理者ではないプロバイダー ユーザーは、共有を一覧表示し、共有内の資産 (テーブルとノートブック) を共有の受信者と共に一覧表示できます。
Databricks Marketplace では、これにより、プロバイダー ユーザーはリストで共有されているデータの詳細を表示できます。