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