Microsoft Fabric 會使用Microsoft受控密鑰來加密待用數據。 使用適用於 Fabric 工作區的客戶自控金鑰,您可以使用 Azure Key Vault 金鑰,將另一層保護新增至 Microsoft Fabric 工作區中的數據。 客戶管理的金鑰可提供更大的彈性,讓您管理其輪替、控制存取和使用方式稽核。 它也有助於組織符合數據控管需求,並符合數據保護和加密標準。
所有 Fabric 數據存放區在待用狀態下都使用 Microsoft 管理的金鑰進行加密。 客戶管理的金鑰會使用信封加密,其中金鑰加密金鑰 (KEK) 會加密數據加密金鑰 (DEK)。 在使用客戶管理的金鑰時,Microsoft 管理的 DEK 會先加密您的資料,隨後 DEK 將使用您的客戶管理的 KEK 進行加密。 使用永不離開 Key Vault 的 KEK 可讓數據加密密鑰本身進行加密和控制。
這很重要
這項功能目前處於預覽階段。
先決條件
適用於 Fabric 工作區的客戶自控金鑰需要初始設定。 此設定包括啟用網狀架構加密租使用者設定、設定 Azure Key Vault,以及授與網狀架構平臺 CMK 應用程式對 Azure Key Vault 的存取權。 設定完成後,具有 系統管理員工作區角色 的用戶可以在工作區上啟用此功能。
步驟 1:啟用 Fabric 租用者設定
網狀架構系統管理員必須確定已啟用 [套用客戶管理的金鑰] 設定。 如需詳細資訊,請參閱 加密租用戶設定 一文。
步驟 2:建立網狀架構平臺 CMK 應用程式的服務主體
Fabric 會使用 Fabric 平臺 CMK 應用程式來存取您的 Azure Key Vault。 若要讓應用程式運作,必須為租使用者建立 服務主體 。 此程式是由具有 Microsoft Entra ID 許可權的使用者所執行,例如 雲端應用程式管理員。
請依照 在 Microsoft Entra ID 中從多租使用者應用程式建立企業應用程式 中的指示,為Microsoft Entra ID 租使用者中名為 Fabric Platform CMK 的應用程式建立服務主體。
步驟 3:設定 Azure Key Vault
您必須設定 Key Vault,讓 Fabric 可以存取它。 此步驟是由具有 Key Vault 許可權的使用者所執行,例如 Key Vault 系統管理員。 如需詳細資訊,請參閱 Azure 安全性 角色。
開啟 Azure 入口網站並流覽至您的 Key Vault。 如果您沒有 Key Vault,請遵循 使用 Azure 入口網站建立密鑰保存庫中的指示。
在您的 Key Vault 中,設定下列設定:
在您的 Key Vault 中,開啟 存取控制 (IAM)。
從 [ 新增 ] 下拉式清單中,選取 [新增角色指派]。
選取 [ 成員] 索引標籤,然後按兩下 [ 選取成員]。
在 [選取成員] 窗格中,搜尋 [網狀架構平臺 CMK]
選取 Fabric Platform CMK 應用程式,然後 選取。
選取 [ 角色] 索引標籤,然後搜尋 Key Vault 密碼編譯服務加密使用者 或啟用 取得、包裝密鑰和解除包裝密鑰 許可權的角色。
選取 [金鑰保存庫加密服務加密使用者]。
選取 [檢閱 + 指派 ],然後選取 [ 檢閱 + 指派 ] 以確認您選擇的選擇。
步驟 4:建立 Azure Key Vault 金鑰
若要建立 Azure Key Vault 金鑰,請遵循使用 Azure 入口網站 建立金鑰保存庫中的指示。
Key Vault 的需求
Fabric 僅支援 無版本客戶管理的金鑰,其格式為密鑰 https://{vault-name}.vault.azure.net/{key-type}/{key-name}
。 網狀架構會每天檢查金鑰保存庫是否有新版本,並使用可用的最新版本。 若要避免在建立新密鑰之後無法存取工作區中的數據,請在停用舊版之前等候 24 小時。
您的金鑰必須是 RSA 金鑰。 支援的大小如下:
- 2,048 位元
- 3,072 位元
- 4,096 位元
如需詳細資訊,請參閱關於金鑰。
使用客戶管理的金鑰啟用加密
請遵循本節中的步驟,在 Fabric 工作區中使用客戶管理的密鑰。
從您的 [網狀架構] 工作區中,選取 [ 工作區設定]。
從 [ 工作區設定] 窗格中,選取 [ 加密]。
啟用 [套用客戶管理的金鑰]。
在 [ 金鑰識別碼 ] 字段中,輸入客戶管理的金鑰標識碼。
選取 ,然後套用。
完成這些步驟之後,您的工作區會以客戶管理的金鑰加密。 這表示工作區中的現有和未來專案將會由您用於設定的客戶管理密鑰加密。 您可以在工作區設定的 [加密] 索引標籤中檢閱 [作用中]、[進行中] 或 [失敗]。 加密進行中或失敗的專案也會以分類方式列出。 密鑰必須在金鑰保存庫中保持作用中,而加密正在進行中(狀態:進行中)。 重新整理頁面以檢視最新的加密狀態。 如果工作區中的某些專案加密失敗,您可以使用不同的金鑰重試。
撤銷存取權
若要撤銷使用客戶管理的密鑰加密工作區中的數據存取權,請撤銷 Azure Key Vault 中的金鑰。 在密鑰撤銷後的 60 分鐘內,對工作區的讀取和寫入操作請求會失敗。
您可以變更存取原則或變更金鑰保存庫上的權限,或刪除金鑰,藉此撤銷客戶自控加密金鑰。
若要恢復存取權,請還原密鑰保存庫中客戶管理密鑰的存取權。
停用加密
若要停用使用客戶管理的密鑰加密工作區,請移至 [工作區設定 ] 停用 [套用客戶管理的密鑰]。 工作區仍會使用受控密鑰Microsoft加密。
您無法在工作區中任何 Fabric 項目的加密過程中取消啟用客戶自控密鑰。
加密目前適用於選取的區域,且僅適用於使用這些區域中容量的工作區。
考慮事項與限制條件
使用客戶管理的金鑰設定 Fabric 工作區之前,請考慮下列限制:
下列 Fabric 項目目前支援客戶管理的金鑰:
- Lakehouse
- 環境
- Spark 工作定義
- 適用於 GraphQL 的 API
- ML 模型
- 實驗
- 數據管線
- 數據流
- 產業解決方案
無法針對包含不支援專案的工作區啟用此功能。
啟用 Fabric 工作區的客戶自控金鑰加密時,只能在該工作區中建立支持的專案。 若要使用不支援的專案,請在未啟用此功能的不同工作區中建立這些專案。
下列資料不受客戶管理的金鑰保護:
- 儲存在 Spark 叢集中的所有資料(儲存在臨時光碟的數據,作為洗牌或數據溢出或 Spark 應用程式中的 RDD 快取的一部分)都不會受到保護。 這包括來自 Notebook、Lakehouse、Spark 作業定義、Lakehouse 表格載入和維護作業、快捷方式轉換、Fabric 具象化檢視刷新 的所有 Spark 作業。
- 歷史伺服器中儲存的作業記錄
- 附加為環境配置的一部分或使用特殊指令新增為Spark會話自定義的一部分的函式庫不會受到保護。
- Lakehouse 資料行名稱、數據表格式、數據表壓縮、SQL 端點
- 建立數據管線和複製作業時產生的元數據,例如資料庫名稱、數據表、架構
- ML 模型和實驗的元數據,例如模型名稱、版本、計量
下列區域僅支援 CMK:美國東部、德國中西部、美國中北部、北歐、美國中南部、東南亞、阿聯酋北部、英國南部、西歐和美國西部。 若要使用 CMK,您的主區域和容量必須位於支援的區域中。
CMK 支援所有 F 產品型號。
CMK 可以使用網狀架構入口網站來啟用,而且不支援 API。
啟用 Azure Key Vault 防火牆設定時,不支援 CMK。
在租用戶層級加密設定開啟的情況下,可以對工作區啟用或停用 CMK。 關閉租使用者設定之後,您就無法再為該租使用者中的工作區啟用 CMK,或針對已在該租用戶中開啟 CMK 的工作區停用 CMK。 在關閉租用戶設定之前啟用 CMK 的工作區中的數據,將會使用客戶管理的密鑰保持加密。 保持相關聯密鑰的活動狀態,以便能夠在該工作區中解密數據。