Microsoft Fabric 使用由 Microsoft 管理的金鑰對所有靜態資料進行加密。 透過客戶管理的Fabric工作區金鑰,你可以利用Azure Key Vault金鑰,為Microsoft Fabric工作區中的資料(包括 OneLake 中的所有資料)增加另一層保護。 客戶管理的金鑰可提供更大的彈性,讓您管理其輪替、控制存取和使用方式稽核。 它也有助於組織符合數據控管需求,並符合數據保護和加密標準。
客戶管理金鑰的運作方式
所有 Fabric 資料儲存皆以 Microsoft 管理的金鑰進行靜態加密。 客戶管理的金鑰會使用信封加密,其中金鑰加密金鑰 (KEK) 會加密數據加密金鑰 (DEK)。 使用客戶管理金鑰時,Microsoft 管理的 DEK 會加密你的資料,然後再用客戶管理的 KEK 加密 DEK。 使用永不離開 金鑰保存庫 的 KEK,可以加密並控制資料加密金鑰本身。 這可確保已啟用 CMK 的工作區中的所有客戶內容都使用客戶管理的金鑰進行加密。
使用工作區的客戶管理金鑰啟用加密
工作區管理員可以在工作區層級使用 CMK 設定加密。 工作區管理員在入口網站中啟用設定後,儲存在該工作區中的所有客戶內容都會使用指定的 CMK 進行加密。 CMK 整合 AKV 的存取政策及基於角色的存取控制(RBAC),讓您能根據組織的安全模型靈活定義細緻權限。 如果你選擇之後停用 CMK 加密,工作空間會回復到 Microsoft 管理的金鑰。 你也可以隨時撤銷金鑰,且在撤銷後一小時內會封鎖加密資料的存取。 透過工作區層級的細緻度與控制,你提升了 Fabric 中資料的安全性。
支援的項目
目前支持使用客戶管理金鑰的項目包括以下 Fabric 項目:
- Lakehouse
- 倉儲
- Notebook
- 環境
- Spark 工作定義
- 適用於 GraphQL 的 API
- ML 模型
- 實驗
- 管線
- 數據流
- 複製作業
- 產業解決方案
- SQL Database
- 鏡像資料庫
- 活動屋(預覽)
- Graph
無法針對包含不支援專案的工作區啟用此功能。 當啟用客戶管理的 Fabric 工作區金鑰加密時,該工作區只能建立支援的項目。 要使用不支援的項目,請在沒有啟用此功能的其他工作區建立它們。
使用客戶管理的金鑰設定工作區的加密
客戶管理的 Fabric 工作空間金鑰需要初步設定。 此設定包括啟用 Fabric 加密租戶設定、設定 Azure Key Vault,以及授權 Fabric Platform CMK 應用程式存取 Azure Key Vault。 設定完成後,具有 系統管理員工作區角色 的用戶可以在工作區上啟用此功能。
步驟 1:啟用 Fabric 租戶設定
Fabric 管理員 需要確保已啟用「應用客戶管理的密鑰」設定。 如需詳細資訊,請參閱 加密租用戶設定 一文。
步驟 2:為 Fabric Platform CMK 應用程式建立服務主體
Fabric 使用 Fabric平台 CMK 應用程式來存取你的 Azure Key Vault。 若要讓應用程式運作,必須為租使用者建立 服務主體 。 此程序由擁有Microsoft Entra ID權限的使用者執行,例如雲端應用程式管理員。
請依照在Microsoft Entra ID中將多租戶應用程式轉換為企業應用程式的指引,在您的Microsoft Entra ID租戶中,建立一個名稱為Fabric平台CMK且應用程式ID為61d6811f-7544-4e75-a1e6-1c59c0383311的應用程式的服務主體。
步驟 3:配置 Azure Key Vault
你需要設定你的 金鑰保存庫,讓 Fabric 能夠存取它。 此步驟由擁有金鑰保存庫權限的使用者執行,例如 金鑰保存庫 Administrator。 欲了解更多資訊,請參閱 Azure Security 角色。
打開 Azure 入口網站,並導航到你的 金鑰保存庫。 如果你沒有金鑰保存庫,請依照的指示使用Azure入口建立key vault。
在你的 金鑰保存庫 中,請設定以下設定:
在你的金鑰保存庫中,開啟 存取控制(IAM)。
從 [ 新增 ] 下拉式清單中,選取 [新增角色指派]。
選取 [ 成員] 索引標籤,然後按兩下 [ 選取成員]。
在選取成員窗格中,搜尋 Fabric 平台 CMK
選擇 Fabric平台 CMK 應用程式,然後Select。
選擇 Role 標籤,搜尋 金鑰保存庫 Crypto Service Encryption User 或一個能啟用 get、wrapkey 和 unwrap key 權限的角色。
選擇 金鑰保存庫 加密服務加密用戶。
選取 [檢閱 + 指派 ],然後選取 [ 檢閱 + 指派 ] 以確認您選擇的選擇。
步驟4:建立 Azure Key Vault key
要建立Azure Key Vault金鑰,請依照使用 Azure portal 建立金鑰保險庫的指示。
金鑰保存庫 要求
Fabric 僅支援 無版本的客戶管理金鑰,格式為 https://{vault-name}.vault.azure.net/{key-type}/{key-name}(用於 Vault)及 https://{hsm-name}.managedhsm.azure.net/{key-type}/{key-name}(管理型 HSM)。 Fabric 每天檢查金鑰庫是否有新版本,並使用最新版本。 若要避免在建立新密鑰之後無法存取工作區中的數據,請在停用舊版之前等候 24 小時。
金鑰保存庫 與 Managed HSM 必須同時啟用軟刪除與清除保護,且金鑰必須為 RSA 或 RSA-HSM 類型。 支援的金鑰大小如下:
- 2,048 位元
- 3,072 位元
- 4,096 位元
如需詳細資訊,請參閱關於金鑰。
備註
Microsoft Fabric 的 SQL 資料庫不支援 4,096 位元金鑰。
你也可以使用啟用防火牆設定的 Azure 金鑰保存庫。 當你停用對 金鑰保存庫 的公開存取時,可以選擇「允許受信任的 Microsoft 服務繞過此防火牆」。
步驟 5:使用客戶管理的金鑰啟用加密
完成前置條件後,請依照本節步驟在 Fabric 工作空間啟用客戶管理的金鑰。
從你的Fabric工作區,選擇Workspace settings。
從 [ 工作區設定] 窗格中,選取 [ 加密]。
啟用 [套用客戶管理的金鑰]。
在 [ 金鑰識別碼 ] 字段中,輸入客戶管理的金鑰標識碼。
選取 ,然後套用。
完成這些步驟之後,您的工作區會以客戶管理的金鑰加密。 這表示 OneLake 中的所有資料都已加密,且工作空間中現有及未來的項目會由你用於設定時使用的客戶管理金鑰加密。 您可以在工作區設定的 [加密] 索引標籤中檢閱 [作用中]、[進行中] 或 [失敗]。 加密進行中或失敗的專案也會以分類方式列出。 加密進行期間,金鑰必須在金鑰保存庫中保持有效 (狀態:進行中)。 重新整理頁面以檢視最新的加密狀態。 如果工作區中的某些專案加密失敗,您可以使用不同的金鑰重試。
撤銷存取權
若要撤銷使用客戶管理金鑰加密的工作空間資料存取權,請在 Azure Key Vault 中撤銷該金鑰。 在密鑰撤銷後的 60 分鐘內,對工作區的讀取和寫入操作請求會失敗。
您可以變更存取原則或變更金鑰保存庫上的權限,或刪除金鑰,藉此撤銷客戶自控加密金鑰。
要恢復存取權,請恢復 金鑰保存庫 中客戶管理的金鑰存取權。
備註
工作區不會自動重新驗證 Microsoft Fabric 中 SQL 資料庫的金鑰。 相反地,你必須 手動重新驗證 CMK 以恢復存取權限。
停用加密
若要停用使用客戶管理金鑰加密工作空間,請進入 工作區設定 並關閉 「套用客戶管理金鑰」。 工作空間仍透過 Microsoft 管理的金鑰進行加密。
備註
當工作區中任何 Fabric 項目正在進行加密時,你無法停用客戶管理的金鑰。
監測
你可以透過稽核日誌條目追蹤 Fabric 工作區的加密設定請求。 稽核日誌中使用下列作業名稱:
- 套用工作空間加密
- DisableWorkspaceEncryption
- GetWorkspace加密
考慮事項與限制條件
在您以客戶管理的金鑰配置 Fabric 工作空間前,請考慮以下限制:
以下資料未受到客戶管理金鑰保護:
- 所有儲存在 Spark 叢集中的資料,包括作為 shuffle 或資料溢出時儲存在臨時磁碟的資料,或是 spark 應用程式中的 RDD 快取。 這些資料包含所有來自筆記本、Lakehouse、Spark 工作定義、Lakehouse 資料表載入與維護工作、捷徑轉換,以及 Fabric 實體化檢視重新整理的 Spark 工作。
- 附加於環境或透過魔法指令自訂 Spark 會話時新增的函式庫不會受到保護
- 建立管線和複製任務時產生的中繼資料,例如資料庫名稱、資料表、結構描述
- ML 模型和實驗的元數據,例如模型名稱、版本、計量
- 倉儲查詢 Object Explored 和後端快取,每次使用後都會收回
在已啟用客戶管理金鑰設定的工作區中,不支援 Mirrored Dataverse 和 Mirrored Azure Databricks Catalog。
CMK 支援所有 F 產品型號。 試用容量無法用於使用 CMK 進行加密。
你可以為以 BYOK 容量托管的工作空間開啟 CMK。 相同或分開的金鑰可用於保護啟用 CMK 工作區中的項目,以及 BYOK 容量上的語意模型。 (預覽版)
你可以透過 Fabric 入口網站或 API 啟用 CMK。 工作區管理員可以使用 API(指派工作區加密)、取得工作區加密及重設工作區加密,來開啟或關閉 CMK 設定,並查看工作區的 CMK 狀態。 租戶管理員可以使用 List Workspaces API 來取得租戶中所有工作區的加密狀態。
在租用戶層級加密設定開啟的情況下,可以對工作區啟用或停用 CMK。 關閉租使用者設定之後,您就無法再為該租使用者中的工作區啟用 CMK,或針對已在該租用戶中開啟 CMK 的工作區停用 CMK。 在關閉租戶設定前啟用 CMK 的工作區資料,仍以客戶管理的金鑰加密。 保持相關聯密鑰的活動狀態,以便能夠在該工作區中解密數據。 在工作區中停用 CMK 設定也會限制你新增 BYOK 金鑰到租戶的功能。