Unity カタログでの属性ベースのアクセス制御

属性ベースのアクセス制御 (ABAC) は、セキュリティ保護可能なリソースに関連付けられている属性を評価することによってアクセスが決定される Unity カタログのアクセス制御モデルです。 これらの属性は、 管理タグを使用して表され、 ポリシー が保護する必要があるデータを識別するためにポリシー条件で使用されます。

ポリシー は、カタログ、スキーマ、テーブルなどの Unity カタログ階層のレベルでアタッチされ、動的に評価されます。 セキュリティ保護可能なリソースにポリシーの対象となる属性がある場合、そのポリシーは自動的に有効になるため、1 つのポリシーでカタログまたはスキーマ全体に一貫したアクセス規則を適用できます。

ABAC では、行 フィルター ポリシー と列 マスク ポリシーを使用した行レベルと列レベルのセキュリティもサポートされています。 サポートされているセキュリティ保護可能な種類は、テーブル、具体化されたビュー、ストリーミング テーブルです。

次のトピックは、Unity カタログでの ABAC の使用を開始する際に役立ちます。

トピック Description
属性ベースのアクセス制御 (ABAC) の中心概念 管理タグ、ポリシー、UDF、ポリシー スコープ、タグの継承、およびクエリ時のポリシーの評価と適用方法について説明します。
ABAC ポリシーの作成と管理 カタログ エクスプローラー、SQL、REST API を使用して ABAC ポリシーを作成、編集、表示、削除する方法。
ポリシーの評価とランタイムの動作 ポリシーの評価と適用の内部メカニズム、およびタグとポリシー操作の監査ログ。
行フィルター処理と列マスクの一般的なパターン 複数型マスクと構造体列の編集のための VARIANT ベースの UDF など、行のフィルター処理と列マスク用の再利用可能なパターン。
ABAC ポリシーのベスト プラクティス ポリシー スコープ、タグ分類の設計、およびポリシー管理に関する推奨事項。
ABAC ポリシーのパフォーマンスに関する考慮事項 UDF の複雑さ、述語のプッシュダウン、クエリの最適化など、ABAC ポリシーのパフォーマンス特性。
ABAC とテーブル レベルの行フィルターと列マスクを使用する場合 ABAC ポリシーとテーブル レベルの行フィルターと列マスク (スコープ、所有権、オーバーライド動作の違いなど) を選択する方法。
ABAC の要件、クォータ、制限事項 コンピューティング要件、ポリシーのクォータ、そして現在のABAC(属性ベースのアクセス制御)の制約、ビューのサポートや競合の解決を含みます。