属性ベースのアクセス制御 (ABAC) は、セキュリティ保護可能なオブジェクトに関連付けられている属性を評価することによってアクセスが決定される Unity カタログのアクセス制御モデルです。 これらの属性は、 管理タグを使用して表され、 ポリシー が保護する必要があるデータを識別するためにポリシー条件で使用されます。
ポリシー は、カタログ、スキーマ、テーブルなどの Unity カタログ階層のレベルでアタッチされ、動的に評価されます。 セキュリティ保護可能なオブジェクトにポリシーの対象となる属性がある場合、そのポリシーは自動的に有効になるため、1 つのポリシーでカタログまたはスキーマ全体に一貫したアクセス規則を適用できます。
ABAC では、テーブル、具体化されたビュー、およびストリーミング テーブルに対する 行フィルター ポリシー と 列マスク ポリシー によって、行レベルと列レベルのセキュリティがサポートされます。 ABACはまた、サポートされているセキュラブルタイプに対する GRANT ポリシー (ベータ版)を通じて動的特権付与もサポートしています。
次のトピックは、Unity カタログでの ABAC の使用を開始する際に役立ちます。
| トピック | Description |
|---|---|
| 属性ベースのアクセス制御 (ABAC) の中心概念 | 管理タグ、ポリシー、UDF、ポリシー スコープ、タグの継承、およびクエリ時のポリシーの評価と適用方法について説明します。 |
| 行フィルターポリシーと列マスク ポリシーを作成および管理する | カタログ エクスプローラー、SQL、REST API を使用して行フィルターポリシーと列マスク ポリシーを作成、編集、表示、削除する方法。 |
| ABAC GRANT ポリシー(ベータ版) | サポートされているセキュア可能タイプに対する動的特権付与のための GRANT ポリシー(ベータ版)の作成と管理方法。 |
| 行フィルターと列マスク ポリシーの評価と実行時の動作 | ポリシーの評価と適用の内部メカニズム、およびタグとポリシー操作の監査ログ。 |
| 行フィルター処理と列マスクの一般的なパターン | 行フィルタリングおよびカラムマスキングのための再利用可能なパターン(識別子属性付きカラムマスキング、リクエストコンテキストに基づくマスキング、多型マスキング用のVARIANTベースのUDF、構造体カラム編集などが含まれます。 |
| ABAC ポリシーのベスト プラクティス | ポリシー スコープ、タグ分類の設計、およびポリシー管理に関する推奨事項。 |
| 行フィルターポリシーと列マスク ポリシーのパフォーマンスに関する考慮事項 | UDF の複雑さ、述語のプッシュダウン、クエリの最適化など、ABAC ポリシーのパフォーマンス特性。 |
| ABAC とテーブル レベルの行フィルターと列マスクを使用する場合 | ABAC ポリシーとテーブル レベルの行フィルターと列マスク (スコープ、所有権、オーバーライド動作の違いなど) を選択する方法。 |
| 行フィルターポリシーと列マスク ポリシーの要件、クォータ、制限事項 | コンピューティング要件、ポリシーのクォータ、そして現在の ABAC 制限 (ビュー サポートおよび競合の解決を含む)。 |