使用 Azure Key Vault 的最佳做法

Azure Key Vault 可保護加密金鑰和秘密,例如憑證、連接字串和密碼。 本文可協助您最佳化金鑰保存庫的使用。

使用個別的金鑰保存庫

建議針對每個區域中每個環境 (開發、生產前和生產環境) 的每個應用程式使用個別的保存庫。 細微隔離可協助您避免跨應用程式、環境和區域共用秘密,並且在出現缺口時降低威脅。

為何建議使用個別的金鑰保存庫

金鑰保存庫會定義所儲存祕密的安全性界限。 將祕密分組成相同的保存庫會增加安全性事件的「爆炸半徑」,因為攻擊能夠無需顧慮存取祕密。 若要緩解無需顧慮的存取,請考慮特定應用程式「應該」可以存取哪些祕密,然後根據此描述來分隔您的金鑰保存庫。 依應用程式分隔金鑰保存庫是最常見的界限。 不過,對於大型應用程式而言,安全性界限可能更細微 (例如每個相關服務群組)。

控制對保存庫的存取

加密金鑰和祕密 (例如憑證、連接字串和密碼) 具敏感性和業務關鍵性。 您必須藉由只允許授權的應用程式和使用者,來保護金鑰保存庫的存取。 Azure Key Vault 安全性功能提供 Key Vault 存取模型的概觀。 其中說明驗證和授權, 也說明如何保護金鑰保存庫的存取。

控制保存庫存取的建議如下:

  • 使用角色型存取控制 (RBAC) 鎖定訂用帳戶、資源群組和金鑰保存庫的存取。
  • 針對需要持續存取 Key Vault 的應用程式、服務和工作負載,在 Key Vault 範圍指派 RBAC 角色
  • 使用 Privileged Identity Management (PIM) 為操作員、管理員和其他需要 Key Vault 特殊權限存取的使用者帳戶指派 Just-In-Time 合格 RBAC 角色
    • 至少需要一名核准者
    • 強制執行 Multi-Factor Authentication
  • 使用 Private Link防火牆與虛擬網路來限制網路存取

開啟保存庫的資料保護

開啟清除保護,以便防範祕密和金鑰保存庫遭到惡意或意外刪除,即使在開啟虛刪除之後也是。

如需詳細資訊,請參閱 Azure Key Vault 虛刪除概觀 (機器翻譯)

開啟記錄功能

開啟保存庫的記錄。 此外,設定警示

Backup

清除保護可防止保存庫物件遭到惡意和意外刪除長達 90 天。 在清除保護不可行的情況下,我們建議備份保存庫物件,這些物件 (例如保存庫內產生的加密金鑰) 無法從其他來源重新建立。

如需備份的詳細資訊,請參閱 Azure Key Vault 備份與還原 (機器翻譯)

多租用戶解決方案和 Key Vault

多租用戶解決方案建置在其元件可用來為多個客戶或租用戶提供服務的架構上。 多租用戶解決方案通常用於支援軟體即服務 (SaaS) 解決方案。 如果您要建置包含 Key Vault 的多租用戶解決方案,請檢閱多租用戶和 Azure Key Vault (機器翻譯)。

常見問題集:

我可以使用 Azure Key Vault 角色型存取控制 (RBAC) 權限模型物件範圍指派,為 Azure Key Vault 內的應用程式小組提供隔離嗎?

否。 RBAC 權限模型允許將 Key Vault 中個別物件的存取權限指派給使用者或應用程式,但僅限於讀取。 任何管理作業 (例如網路存取控制、監視和物件管理) 都需要保存庫層級權限。 每個應用程式都有一個 Key Vault,可為應用程式小組的操作員提供安全隔離。

下一步

深入了解金鑰管理最佳做法: