Azure Key Vault 會保護密碼編譯金鑰、憑證 (以及與憑證相關聯的私密金鑰),以及雲端中的祕密 (例如連接字串和密碼)。 但是,在儲存敏感性和商務關鍵性資料時,您必須採取步驟,以將保存庫和儲存於其中的資料安全性提至最高。
本文中的安全性建議會實作零信任原則:「明確驗證」、「使用最低許可權存取」和「假設違規」。 如需完整的 零信任 指引,請參閱 零信任 指引中心。
本文提供安全建議,協助保護您的 Azure Key Vault 部署。
服務特定的安全性
Azure Key Vault 在保險庫架構及適當使用加密資料服務方面有獨特的安全考量。
針對每個應用程式、區域和環境使用一個 金鑰保存庫:為開發、生產前和生產環境建立個別 金鑰保存庫,以減少缺口的影響。
金鑰保存庫會定義所儲存祕密的安全性界限。 將秘密分組成相同的保存庫會增加安全性事件的爆炸半徑 ,因為攻擊能夠無需顧慮存取秘密。 若要緩解跨越不同考量的存取問題,請考慮特定應用程式應該可以存取哪些祕密,然後根據此劃分來分隔您的金鑰保存庫。 依應用程式分隔金鑰保存庫是最常見的界限。 不過,對於大型應用程式而言,安全性界限可能更細微 (例如每個相關服務群組)。
在多租用戶解決方案中為每個租使用者使用一個 金鑰保存庫:針對多租使用者 SaaS 解決方案,請針對每個租使用者使用不同的 金鑰保存庫 來維護數據隔離。 此方法提供客戶資料與工作負載的安全隔離。 欲了解更多資訊,請參閱 Multitenancy 與 Azure Key Vault。
不要把 金鑰保存庫 當作客戶或服務設定的資料儲存庫:服務應該使用 Azure 儲存體 搭配靜態加密,或使用 Azure 應用程式組態。 這些選項在配置場景中效能更高。
不要將憑證(客戶或服務擁有)存為秘密:將服務擁有的憑證存為 金鑰保存庫 憑證,並設定自動輪替。 如需詳細資訊,請參閱 Azure 金鑰保存庫:憑證 和 瞭解 Azure Key Vault 中的自動調整。
不要將客戶內容儲存在 金鑰保存庫:金鑰保存庫 不是資料儲存平台,也不是像 金鑰保存庫 那樣的擴充設計。 相反地,請使用 Azure Cosmos DB 或 Azure 儲存體。 想要自帶金鑰(BYOK)進行靜態加密的客戶,可以將包裝金鑰存放在 Azure Key Vault,並用它在 Azure 儲存體 中加密資料。
網路安全
降低網路暴露對於保護 Azure Key Vault 免受未經授權存取至關重要。 根據組織的需求與使用情境來設定網路限制。 欲了解詳細資訊及逐步設定說明,請參閱 「為 Azure Key Vault 設定網路安全」。
這些網路安全性功能會從最受限到最少限制的功能列出。 挑選最適合您組織使用案例的組態。
僅停用公用網路存取並使用私人端點:部署 Azure Private Link 以建立從虛擬網路到 Azure 的私人存取點 金鑰保存庫 並防止公開至公用因特網。 停用公共存取會阻擋資料平面連線;保險庫的公開 DNS 紀錄依設計仍可解析(參見 私鑰保險庫的公開 DNS 可見性)。 如需實作步驟,請參閱整合 金鑰保存庫 與 Azure Private Link。
- 某些客戶情境需要信任的 Microsoft 服務繞過防火牆,在這種情況下,可能需要將保管庫設定為允許信任的 Microsoft 服務。 關於啟用此選項時可繞過防火牆的服務清單,請參見 「受信任服務」。 當公共通行被禁止時,繞道仍持續適用。 如需逐步指引,請參閱「設定網路安全:啟用 金鑰保存庫 防火牆(僅限可信服務)」。
啟用 金鑰保存庫 防火牆:限制對公用靜態 IP 位址或虛擬網路的存取。 完整細節請參閱 「設定網路安全:防火牆設定」。
- 某些客戶情境需要信任的 Microsoft 服務繞過防火牆,在這種情況下,可能需要將保管庫設定為允許信任的 Microsoft 服務。 此選項僅允許受信任服務表中的服務;未列入清單的 Microsoft 服務(例如 Azure DevOps)仍需防火牆 IP 規則、虛擬網路規則或私有端點。
使用網路安全邊界:為部署在組織虛擬網路邊界及/或公共靜態 IP 之外的 PaaS 資源(例如 Azure Key Vault、Azure 儲存體 和 SQL Database)定義邏輯網路隔離邊界。 完整詳情請參閱 「設定網路安全:網路安全邊界」。
-
publicNetworkAccess: SecuredByPerimeter覆蓋「允許受信任的 Microsoft 服務繞過防火牆」的設定,意味著某些需要信任的情境無法運作。
-
強制客戶端執行 TLS 版本控制:Azure Key Vault 支援 TLS 1.2 和 1.3。 由於 金鑰保存庫 前端是多租戶服務,不同客戶的 Vault 可以共享相同的公共 IP 位址,因此每個 HTTPS 請求都會獨立驗證與授權。 用戶端會參與 TLS 協商,因此請將您的用戶端固定到 TLS 1.2 或 1.3,以確保每個連線都使用相應的保護等級。 如需詳細資訊,請參閱 金鑰保存庫 記錄,其中提供可用來監視用戶端所使用的 TLS 版本的 Kusto 查詢範例。
身分識別與存取權管理
Azure Key Vault 使用 Microsoft Entra ID 進行認證。 存取透過兩個介面控制:控制平面(用於管理金鑰庫本身)與資料平面(用於處理金鑰、秘密與憑證)。 關於存取模型與端點的詳細資訊,請參閱 Azure RBAC 關於 金鑰保存庫 資料平面操作的相關說明。
啟用受控識別:針對 Azure 金鑰保存庫 的所有應用程式和服務連線使用 Azure 受控識別,以消除硬式編碼的認證。 受控識別有助於保護驗證,同時移除明確認證的需求。 關於認證方法與情境,請參見 Azure Key Vault 認證。
使用角色型訪問控制:使用 Azure 角色型 存取控制 (RBAC) 來管理 Azure 金鑰保存庫 的存取權。 如需詳細資訊,請參閱適用於 金鑰保存庫 數據平面作業的 Azure RBAC。
- 不要使用舊有存取政策:舊有存取政策存在已知的安全漏洞,且缺乏對 Privileged Identity Management(PIM)的支援。 不要用它們來處理關鍵資料和工作負載。 Azure RBAC 可降低潛在的未經授權的 金鑰保存庫 存取風險。 欲了解更多資訊,請參閱 Azure 角色基礎存取控制(Azure RBAC)與存取政策(舊有)的比較。
RBAC 權限模型允許針對持續存取進行保存庫層級角色指派,並針對特殊權限作業進行合格 (JIT) 指派。 物件範圍指派僅支援讀取操作,而如網路存取控制、監控與物件管理等管理操作則需要保管庫層級的權限。 為了確保不同應用程式團隊之間的安全隔離,每個應用程式應使用一個 金鑰保存庫。
指派即時(JIT)特權角色:使用 Azure 特權身份管理(PIM)為 金鑰保存庫 的管理員及操作員指派合格的 JIT Azure RBAC 角色。 欲了解更多資訊,請參閱 Privileged Identity Management(PIM)概述。
- 需要核准以啟用特殊權限角色:新增一層額外的安全措施,確保至少有一名核准者以啟用 JIT 角色,從而防止未經授權的存取。 如需詳細資訊,請參閱 在 Privileged Identity Management 中設定Microsoft Entra 角色設定。
- 強制執行角色啟用的多重要素驗證:要求對操作員和系統管理員的 JIT 角色啟用進行 MFA 驗證。 欲了解更多資訊,請參閱 Microsoft Entra 多重驗證。
啟用Microsoft Entra 條件式存取原則:金鑰保存庫 支援Microsoft Entra 條件式存取原則,以根據使用者位置或裝置等條件套用訪問控制。 如需詳細資訊,請參閱 條件式存取概觀。
套用最低許可權原則:限制具有系統管理角色的用戶數目,並確保使用者只獲授與其角色所需的最低許可權。 如需詳細資訊,請參閱 使用最低權限原則增強安全性。
資料保護
保護儲存在 Azure Key Vault 的資料需要啟用軟刪除、清除保護,並實施加密資料的自動輪替功能。
開啟軟刪除:確保軟刪除已啟用,這樣你才能在7到90天的保留期內恢復已刪除的金鑰保存庫物件。 更多資訊請參閱 Azure Key Vault 軟刪除概覽。
開啟清除保護:啟用清除保護,以防止即使在啟用軟刪除後仍有可能發生的意外或惡意刪除 金鑰保存庫 物件。 欲了解更多資訊,請參閱 Azure Key Vault 軟刪除概覽:清除保護。
實施加密資產的自動輪替:設定密鑰、秘密和憑證的自動替換,以將風險降到最低,並確保符合安全政策。 密碼編譯數據定期輪替是重要的安全性做法。 欲了解更多資訊,請參閱《了解 Azure Key Vault 中的自動輪換》、《設定金鑰自動輪替》、《設定憑證自動輪替》、《對於擁有一組認證憑證的資源自動秘密輪替》以及擁有兩組認證憑證的資源自動秘密輪替。
記錄和監視
全面的日誌記錄與監控能偵測可疑活動並符合稽核要求。
啟用稽核記錄:金鑰保存庫 記錄會儲存保存庫上執行之作業的相關信息。 欲了解更多資訊,請參閱 金鑰保存庫 日誌。
啟用適用於 金鑰保存庫 的 Microsoft Defender:啟用適用於 金鑰保存庫 的 Microsoft Defender,以監視可疑活動併發出警示。 欲了解更多資訊,請參閱 Microsoft Defender 的 金鑰保存庫 介紹。
啟用安全性事件的日誌警報:設定警報以便在記錄重大事件時收到通知,例如存取失敗或機密刪除。 如需詳細資訊,請參閱 監視和警示 Azure Key Vault。
監視和警示:整合 金鑰保存庫 與事件方格,以接收密鑰、憑證或秘密變更的通知。 欲了解更多資訊,請參閱使用 Azure 事件方格 監控 金鑰保存庫。
合規性和治理
定期的合規稽核與治理政策,確保您的 金鑰保存庫 部署符合安全標準與組織要求。
- 使用 Azure 原則 來強制執行設定:設定 Azure 原則 來稽核及強制執行 Azure 金鑰保存庫 的安全設定,並設定與原則偏差的警示。 欲了解更多資訊,請參閱 適用於 Azure Key Vault 的 Azure 原則 法規遵循控制項。
備份及復原
定期備份確保業務連續性,並防止因意外或惡意刪除而導致的資料遺失。
啟用 Azure 金鑰保存庫 的原生備份:設定和使用 Azure 金鑰保存庫 原生備份功能來備份秘密、金鑰和憑證,以確保可復原性。 欲了解更多資訊,請參閱 Azure Key Vault 備份。
確保無法重新建立的機密進行備份:將金鑰庫中無法從其他來源重新建立的物件(例如加密密鑰)進行備份。 欲了解更多資訊,請參閱 Azure Key Vault 備份。
測試備份和復原程式:若要驗證備份程式的有效性,請定期測試還原 金鑰保存庫 秘密、密鑰和憑證。 欲了解更多資訊,請參閱 Azure Key Vault 備份。
了解備份複製的獨立性:從備份中還原到另一個保險庫的金鑰,與原始金鑰完全獨立。 停用、刪除或清除原始金鑰不會影響任何還原的複本。 停用或刪除金鑰也會使所有相依資料服務離線(例如 SQL TDE 資料庫無法存取,且擁有客戶管理金鑰的儲存帳號會回傳錯誤)。 若懷疑某金鑰被盜,請輪換新金鑰並遷移相依服務,再停用舊金鑰。 完整細節請參閱 備份安全考量 與 金鑰入侵應對。
相關資安文章
關於金鑰、秘密與憑證的安全最佳實務,請參見:
- 保護您的 Azure Key Vault 金鑰:針對金鑰的特定安全最佳實務,包括輪換、HSM 保護及 BYOK。
- 保護您的 Azure Key Vault 秘密:針對秘密的特定安全最佳實務,包括輪替、快取與監控。
- 保護您的 Azure Key Vault 憑證:憑證專屬的安全最佳實務,包括生命週期管理、續約及 CA 整合。