Unity Catalog の特権の管理

この記事では、Unity Catalog のデータとその他のオブジェクトへのアクセスを制御する方法について説明します。

アクセスの制御を設定するには、カタログ エクスプローラー、ノートブックまたは Databricks SQL クエリの SQL ステートメント、Unity Catalog REST API、Terraform のいずれかを使用します。

初期状態では、ユーザーはメタストア内のデータにアクセスできません。 アクセス権は、メタストア管理者、オブジェクトの所有者、またはオブジェクトを含むカタログやスキーマの所有者のいずれかが付与できます。

管理者特権

Azure Databricks アカウント管理者、ワークスペース管理者、メタストア管理者には、Unity Catalog を管理するための既定の特権があります。 Unity Catalog の管理者特権に関する記事を参照してください。

オブジェクトの所有権

Unity Catalog 内のすべてのセキュリティ保護可能なオブジェクトには所有者が存在します。 オブジェクト所有者は、他のプリンシパルに特権を付与できることを含め、そのオブジェクトに対するすべての特権を持ちます。 「Unity Catalog オブジェクトの所有権を管理する」を参照してください。

Unity Catalog の特権

アクセス特権は、メタストア管理者、オブジェクトの所有者、またはオブジェクトを含むカタログやスキーマの所有者のいずれかが許可できます。 「Unity Catalog の権限とセキュリティ保護可能なオブジェクト」を参照してください。

特権の継承

Unity カタログのセキュリティ保護可能なオブジェクトは階層構造であり、権限は下位に継承されます。 つまり、カタログに権限を付与すると、カタログ内のすべての現在および将来のオブジェクトに権限が自動的に付与されます。 同様に、スキーマに付与された特権は、そのスキーマ内の現在および将来のすべてのオブジェクトに継承されます。 「継承モデル」を参照してください。

注意

パブリック プレビュー中 (2022 年 8 月 25 日より前) に Unity Catalog メタストアを作成した場合は、特権継承可能な特権モデル バージョン 1.0 にアップグレードできます。 「特権継承へのアップグレード」を参照してください。

基本的なオブジェクト特権

Unity Catalog では、カタログ、スキーマ、テーブル、ビュー、関数に対する特権を管理するための SQL キーワード SHOWGRANTREVOKE がサポートされています。

オブジェクトの所有者またはメタストア管理者は、オブジェクトに対するすべての許可をリストできます。 オブジェクトがカタログまたはスキーマ (テーブルやビューなど) 内に含まれている場合、そのカタログまたはスキーマの所有者も、そのオブジェクトに対するすべての許可をリストできます。

この構文の例については、以下の SQL リファレンス ドキュメントを参照してください。

カタログ エクスプローラーはこれらのアクションを完了するための UI を提供しています。カタログ エクスプローラーでの Unity Catalog のアクセス許可の管理に関するページを参照してください。

所有権の移転

メタストア内でオブジェクトの所有権を移転するには、SQL またはカタログ エクスプローラーを使用できます。 「Unity Catalog オブジェクトの所有権を管理する」またはカタログ エクスプローラーでの Unity Catalog オブジェクト所有権の管理に関するページを参照してください。

外部の場所とストレージの資格情報を管理する

カタログ エクスプローラーを使用して、Unity Catalog 用に外部の場所とストレージの資格情報を構成できます。 詳細については、「ストレージの資格情報を管理する」および「外部の場所を管理する」を参照してください。

動的ビュー

動的ビューを使用すると、値をフィルター処理またはマスクすることで、ビューの行、列、または特定のレコードにアクセスできるユーザーを管理できます。 「動的ビューを作成する」を参照してください。