在Fabric Data Warehouse中實作欄位層級安全

適用於:✅ Microsoft Fabric 中的 SQL 分析端點和倉儲

Microsoft Fabric 中的資料行層級安全性 (CLS) 可讓您根據這些資料表上的特定授與來控制資料表中資料行的存取。 欲了解更多資訊,請參閱Fabric Data Warehouse中的欄級安全性

本指南將逐步引導您完成在倉儲或 SQL 分析端點中實作資料行層級安全性的步驟。

必要條件

開始之前,請確定您具備下列項目:

  1. 具有作用中容量或試用容量的 Fabric 工作區。
  2. Lakehouse 上的 Fabric Warehouse 或 SQL 分析端點。
  3. 具備下列其中之一:工作區中的系統管理員、成員或參與者角色,或在倉儲或 SQL 分析端點上的更高權限。

1. 連線

  1. 使用具有對倉儲或 SQL 分析端點的提升存取權的帳戶登入。 (工作區上的系統管理員/成員/參與者角色,或者對倉儲或 SQL 分析端點的控制權限)。
  2. 開啟 Fabric 工作區,然後瀏覽至您要套用資料行層級安全性的倉儲或 SQL 分析端點。

2. 定義資料表的資料行層級存取

  1. 識別您要使用資料行層級安全性保護的使用者或角色和資料表。

  2. 使用 GRANT T-SQL 陳述式和資料行清單實作資料行層級安全性。 為了簡化管理,建議將權限指派給角色,而非直接指派給個別使用者。

    -- Grant select to subset of columns of a table
    GRANT SELECT ON YourSchema.YourTable 
    (Column1, Column2, Column3, Column4, Column5) 
    TO [SomeGroup];
    
  3. YourSchema 取代為結構描述的名稱,並將 YourTable 取代為目標資料表的名稱。

  4. SomeGroup 替換為您的使用者/群組名稱。

  5. 請將以逗號分隔的資料行清單,替換成您要授予該角色存取權限的那些資料行。

  6. 重複這些步驟,以視需要授與其他資料表的特定資料行存取權。

3. 測試資料行層級存取

  1. 以屬於具有相關聯 GRANT 陳述式之角色的使用者身分登入。
  2. 查詢資料庫資料表,以確認資料行層級安全性如預期般運作。 使用者應只會看到他們有權存取的資料行,而且應封鎖其他資料行。 例如:
    SELECT * FROM YourSchema.YourTable;
    
  3. 系統將會把該使用者的類似結果,與其他使用 Microsoft Entra 驗證來存取資料庫的應用程式一併篩選。 如需詳細資訊,請參閱 Microsoft Fabric 中作為 SQL 驗證替代方案的 Microsoft Entra 驗證

4. 監控及維護欄位層級安全性

定期監控並更新您的資料行層級安全性原則,以因應不斷演變的安全需求。 追蹤角色指派,並確保使用者具有適當的存取權。