基於屬性的存取控制(ABAC)是 Unity 目錄中的一種存取控制模型,透過評估與可保護物件相關的屬性來決定存取權限。 這些屬性透過 受控標籤表示,用於 政策 條件中識別政策應保護的資料。
政策 會附加在 Unity 目錄階層的某一層級,例如元儲存庫(Beta)、目錄、結構或表格,並以動態方式評估。 當可保護物件擁有政策所針對的屬性時,該政策會自動生效,因此單一政策可以在整個元儲存庫、目錄或結構中強制執行一致的存取規則。
ABAC 透過資料表上的 資料列篩選原則 和 欄遮罩政策,以及 檢視(Beta),支援資料列與欄層級的安全防護。 ABAC 也支援透過 GRANT 原則 動態授與權限,以及在受支援的可保護物件類型上,透過 DENY 原則(Beta)明確拒絕權限。
以下主題幫助你開始使用 Unity 目錄中的 ABAC。
| 主題 | Description |
|---|---|
| 基於屬性的存取控制(ABAC)核心概念 | 涵蓋受控標籤、政策、UDF、政策範圍、標籤繼承,以及政策在查詢時如何評估與執行。 |
| 建立與管理列篩選與欄位遮罩政策 | 如何使用 Catalog Explorer、SQL 和 REST API 建立、編輯、檢視及刪除列篩選與欄位遮罩政策。 |
| Metastore 層級 ABAC 原則(Beta) | 如何在中繼存放區層級附加原則(Beta),讓單一原則可套用至中繼存放區中的每個目錄。 |
| ABAC GRANT 政策 | 如何建立及管理 GRANT 針對支援的可保護類型之動態權限授與原則。 |
| ABAC DENY 政策(測試版) | 如何建立和管理 DENY 政策(測試版),這些政策會拒絕對支援的可安全類型提供 MANAGE ACCESS CONTROL 權限。 |
| 列篩選器與欄位遮罩原則的評估與執行階段行為 | 政策評估與執行內部機制,以及標籤與政策作業的稽核記錄。 |
| 列篩選與欄遮罩的常見模式 | 可重複使用的資料列篩選和資料欄遮蔽模式,包括使用身分屬性的資料欄遮蔽、根據請求內容脈絡進行的遮蔽,以及用於多類型遮蔽的以 VARIANT 為基礎的 UDF。 |
| ABAC 政策的最佳實務 | 政策範圍、標籤分類設計及政策管理的建議。 |
| 列過濾器與欄位遮罩政策的效能考量 | ABAC 政策的效能特性,包括 UDF 複雜度、謂詞推下與查詢優化。 |
| 何時使用 ABAC 還是表層級的列過濾和欄位遮罩 | 如何在 ABAC 政策與資料表層級的列篩選器及欄位遮罩之間選擇,包括範圍、所有權及覆蓋行為的差異。 |
| 列過濾器與欄遮罩政策的要求、配額與限制 | 計算需求、政策配額,以及目前ABAC的限制,包括視圖支援與衝突解決。 |