メインコンテンツまでスキップ

Unity Catalogにおける属性ベースのアクセス制御

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

これらは、カタログ、スキーマ、テーブルなど、 Unity Catalog階層内のレベルに添付され、動的に評価されます。 セキュリティ保護可能なオブジェクトがポリシーの対象となる属性を持つ場合、そのポリシーは自動的に有効になるため、単一のポリシーでカタログ全体またはスキーマ全体にわたって一貫したアクセスルールを適用できます。

ABAC は、テーブル、マテリアライズドビュー、およびストリーミングテーブルにおける行レベルおよび列レベルのセキュリティを、行フィルターポリシー列マスクポリシーを通じてサポートします。ABAC は、GRANT ポリシー(ベータ版)を介した動的な特権付与もサポートしており、これは現在、モデルの EXECUTE に限定されています。

以下のトピックは、Unity Catalog で ABAC を使い始めるのに役立ちます。

トピック

説明

属性ベースアクセス制御(ABAC)の基本概念

管理タグ、ポリシー、UDF、ポリシーのスコープ、タグの継承、クエリ時にポリシーがどのように評価され適用されるかについて説明します。

行フィルターおよび列マスクポリシーの作成と管理

Catalog Explorer、SQL、REST API を使用して、行フィルターと列マスクのポリシーを作成、編集、表示、削除する方法。

ABAC GRANTポリシー(モデル向け)(ベータ)

モデルに対する動的なEXECUTEの付与のためのGRANTポリシー(ベータ版)を作成および管理する方法。

行フィルターと列マスクポリシーの評価とランタイム動作

ポリシーの評価と施行の内部構造、およびタグおよびポリシー操作の監査ログ。

行フィルタリングと列マスキングの一般的なパターン

行フィルタリングと列マスキングのための再利用可能なパターン。これには、複数型マスキングと構造体列の編集のためのVARIANTベースのUDFが含まれます。

ABAC ポリシーのベスト プラクティス

ポリシーの範囲、タグ分類体系の設計、およびポリシー管理に関する推奨事項。

行フィルターおよび列マスクポリシーのパフォーマンス考慮事項

ABACのパフォーマンス特性UDF複雑さ、述語プッシュダウン、クエリ最適化など。

ABACとテーブルレベルの行フィルターおよび列マスクの使い分け

ABACとテーブルレベルの行フィルターおよび列マスクのどちらを選択するか スコープ、所有権、およびオーバーライド動作の違いを含めて。

行フィルターと列マスクのポリシーの要件、クォータ、および制限

コンピュート要件、ポリシー クォータ、およびビューのサポートや競合解決を含む現在の ABAC 制限。