本文說明如何使用 授權引擎 模型,讓任何引擎或應用程式都能與 OneLake 的安全資料整合。
OneLake 安全系統提供細緻的資料存取控制,並在所有存取資料的地方強制執行。 OneLake 的安全設計圍繞集中式政策定義,並以受控且分散式的執行方式進行。 像是基於角色權限、列層級安全(RLS)和欄級安全性(CLS)等安全政策,都是在 OneLake 中撰寫並儲存一次。 強制執行是在讀取資料的引擎查詢時進行。 然而,並非所有引擎都了解如何執行 OneLake 定義的存取控制政策。 如果使用者無法看到所有資料,OneLake 會阻擋存取設定有 RLS 或 CLS 原則的資料。 為了讓你自己的引擎或應用程式能強制執行 OneLake 安全性,請將其設定為授權引擎。
分散式執法的運作方式
OneLake 為每個授權引擎提供使用者的有效存取權限,包括使用者可存取的資料表、列與欄位。 引擎會在自己的查詢層套用這些權限。 在查詢引擎中強制執行政策,讓引擎能使用其原生的查詢處理、快取與優化能力,同時 OneLake 仍是政策定義的真實來源。 無法強制執行使用者 RLS 或 CLS 權限的引擎,無法代表該使用者讀取安全資料表。
Note
欲深入了解集中式政策定義與分散式執行背後的設計決策,請參見《 資料安全的未來是互通性:OneLake 安全性的技術觀察》。
設置授權引擎
授權引擎由工作空間管理員或成員在 Fabric 中賦予引擎身份必要權限來設定。 對於你想授權的每台引擎,請依照以下步驟進行:
- 查閱引擎的文件,找出引擎用來查詢外部資料的身分識別。 請注意,Fabric 僅支援 Microsoft Entra 身份。
- 透過 工作區權限 將引擎身份加入成員角色。授權的引擎存取權限僅限於特定工作區。 此步驟賦予身份必要權限,以讀取 OneLake 安全角色的元資料及從 OneLake 讀取實體資料檔案。 你可以隨時透過將該身份從工作區角色中移除來撤銷其存取權。