分享方式:


Azure Key Vault 基本概念

Azure Key Vault 是個可安全儲存及存取祕密的雲端服務。 祕密是指任何您想要嚴密控制存取的項目,例如 API 金鑰、密碼、憑證或密碼編譯金鑰。 Key Vault 服務支援兩種容器:保存庫和受控硬體安全性模組 (HSM) 集區。 保存庫支援儲存軟體和由 HSM 支援的金鑰、秘密和憑證。 受控 HSM 集區僅支援由 HSM 支援的金鑰。 如需完整的詳細資訊,請參閱 Azure Key Vault REST API 概觀

以下是其他重要字詞:

  • 租用戶:租用戶是擁有並且可管理特定 Microsoft 雲端服務執行個體的組織。 它最常用來指組織的 Azure 和 Microsoft 365 服務集合。

  • 保存庫擁有者:保存庫擁有者可建立金鑰保存庫,並取得其完整存取權和控制權。 保存庫擁有者也可以設定稽核,以記錄誰存取秘密和金鑰。 系統管理員可以控制金鑰生命週期。 他們可以推出新版本的金鑰、備份金鑰,以及執行相關工作。

  • 保存庫取用者:保存庫取用者可在保存庫擁有者為取用者授與存取權時,對金鑰保存庫內的資產執行動作。 可用的動作取決於授與的權限。

  • 受控 HSM 系統管理員:獲派系統管理員角色的使用者可完全控制受控 HSM 集區。 他們可以建立更多角色指派,以將受控存取權委派給其他使用者。

  • 受控 HSM 加密長/使用者:通常指派給使用者或服務主體的內建角色,可在受控 HSM 中使用金鑰執行密碼編譯作業。 加密使用者可以建立新的金鑰,但無法刪除金鑰。

  • 受控 HSM 加密服務加密使用者:通常指派給服務帳戶受控服務識別的內建角色 (例如儲存體帳戶),可使用客戶自控金鑰來加密待用資料。

  • 資源:資源是可透過 Azure 提供的可管理項目。 常見的範例包括虛擬機器、儲存體帳戶、Web 應用程式、資料庫和虛擬網路。 還有很多。

  • 資源群組:資源群組是可保存 Azure 解決方案相關資源的容器。 該資源群組可包含解決方案的所有資源,或是只包含您想以群組方式管理的資源。 您可決定如何根據對組織最有利的方式,將資源配置到資源群組。

  • 安全性主體 - Azure 安全性主體是安全性識別,可供使用者建立的應用程式、服務和自動化工具用來存取特定的 Azure 資源。 將其視為具有特定角色的「使用者身分識別」(使用者名稱和密碼或憑證),並嚴格控制權限。 不同於一般使用者身分識別,安全性主體應該只需要做特定的事。 如果您只授與它執行其管理工作所需的最低權限等級,就可以提升安全性。 用於應用程式或服務的安全性主體稱為安全性主體

  • Microsoft Entra ID:Microsoft Entra ID 是租用戶的 Active Directory 服務。 每個目錄都有一或多個網域。 一個目錄可以有多個與其相關聯的訂用帳戶,但只能有一個租用戶。

  • Azure 租用戶識別碼:租用戶識別碼是對 Azure 訂用帳戶內的 Microsoft Entra 執行個體進行識別的唯一方法。

  • 受控識別:Azure Key Vault 可讓您安全儲存認證及其他金鑰和秘密,但您的程式碼必須向 Key Vault 進行驗證,才可擷取這些項目。 使用受控識別可透過給予 Azure 服務在 Microsoft Entra ID 中的自動受控識別,更輕鬆地解決此問題。 您可以使用此身分識別向 Key Vault 或任何支援 Microsoft Entra 驗證的服務進行驗證,而無須在程式碼中有任何認證。 如需詳細資訊,請參閱下圖和 Auzre 資源受控識別的概觀

驗證

若要對 Key Vault 執行任何作業,您必須先通過其驗證。 有三種向 Key Vault 進行驗證的方式:

  • Azure 資源受控識別:當您在 Azure 中將應用程式部署於虛擬機器時,您可以指派身分識別給可存取 Key Vault 的虛擬機器。 您也可以指派身分識別給其他 Azure 資源。 此方法的優點是應用程式或服務不必管理第一個祕密的輪替。 Azure 會自動輪替身分識別。 建議以此方法為最佳做法。
  • 服務主體和憑證:您可以使用可存取 Key Vault 的服務主體和相關聯的憑證。 不建議採用此方法,因為應用程式擁有者或開發人員必須輪替憑證。
  • 服務主體和祕密:雖然您可以使用服務主體和祕密向 Key Vault 驗證,但不建議這麼做。 用於向 Key Vault 驗證的啟動程序祕密,很難自動輪替。

傳輸中資料加密

Azure Key Vault 強制傳輸層安全性 (TLS) 通訊協定,以保護 Azure Key Vault 與用戶端之間移動的資料。 用戶端會與 Azure Key Vault 交涉 TLS 連線。 TLS 支援增強式驗證、訊息隱私權、完整性 (可偵測訊息竄改、攔截和偽造)、互通性、演算法彈性,以及輕鬆部署和使用。

完整轉寄密碼 (PFS) \(英文\) 會透過唯一金鑰來保護客戶的用戶端系統與 Microsoft 雲端服務之間的連線。 連線也採用 RSA 型 2,048 位元加密金鑰長度。 此組合讓人難以攔截和存取傳輸中的資料。

Key Vault 角色

使用下表來進一步瞭解 Key Vault 如何協助滿足開發人員和安全性系統管理員的需求。

角色 問題陳述 由 Azure Key Vault 解決
Azure 應用程式的開發人員 「我想要撰寫使用金鑰進行簽署和加密的 Azure 應用程式。 但我希望這些金鑰在應用程式外面,這樣解決方案才適合於分散各地的應用程式。

我希望這些金鑰和密碼會受到保護,但我可以不用自己撰寫程式碼。 我也希望可以從應用程式輕鬆使用這些金鑰和密碼,並發揮最佳效能。」
√ 金鑰會儲存在保存庫中,並且視需要由 URI 叫用。

√ Azure 使用會業界標準演算法、金鑰長度和硬體安全性模組保護金鑰。

√ 金鑰會在與應用程式位於相同 Azure 資料中心的 HSM 中處理。 此方法會比金鑰位於不同位置 (例如內部部署) 提供更高的可靠性並減少延遲。
軟體即服務 (SaaS) 的開發人員 「對於客戶的租用戶金鑰和祕密,我不想承擔責任或可能的義務。

我希望客戶擁有並自行管理金鑰,好讓我全神貫注發揮所長,也就是提供核心軟體功能。」
√ 客戶可以將他們自己的金鑰匯入 Azure 並加以管理。 當 SaaS 應用程式需要使用客戶的金鑰執行編譯密碼作業時,Key Vault 會代表應用程式執行這些作業。 應用程式不會看到客戶的金鑰。
資訊安全長 (CSO) 「我想知道我們的應用程式符合 FIPS 140 層級 3 HSM 以進行安全密鑰管理。

我想要確定我的組織妥善掌控金鑰生命週期,並可監視金鑰使用情形。

雖然我們使用多個 Azure 服務和資源,我仍想要從 Azure 集中管理金鑰。」
√針對已驗證的 FIPS 140 HSM 選擇保存庫或受控 HSM
√ 對於 FIPS 140-2 等級 3 驗證的 HSM,選擇受控 HSM 集區

√ 金鑰保存庫經過設計,所以 Microsoft 不會看見或擷取您的金鑰。
√ 金鑰使用情形會近乎即時地進行記錄。

√ 不論您在 Azure 中有幾個保存庫、保存庫支援哪些區域,以及哪些應用程式使用這些保存庫,保存庫均提供單一介面讓您清楚了解。

任何具有 Azure 訂用帳戶的人都可以建立和使用金鑰保存庫。 雖然 Key Vault 可讓開發人員和安全性系統管理員受益,但它可由管理其他 Azure 服務的組織的系統管理員實作和管理。 例如,此系統管理員可以使用 Azure 訂用帳戶登入、建立保存庫以讓組織在其中儲存金鑰,然後負責這類作業工作:

  • 建立或匯入金鑰或秘密
  • 撤銷或刪除金鑰或秘密
  • 授權使用者或應用程式存取金鑰保存庫,以便他們可管理或使用其金鑰和秘密
  • 設定金鑰使用方式 (例如,簽署或加密)
  • 監視金鑰使用方式

此系統管理員之後會提供開發人員 URI,以從其應用程式呼叫。 此系統管理員也會將金鑰使用方式記錄資訊提供給安全性系統管理員。

Azure 金鑰保存庫 運作方式概觀

開發人員也可以使用 API 直接管理金鑰。 如需詳細資訊,請參閱 金鑰保存庫開發人員指南

下一步

大部分地區均提供 Azure 金鑰保存庫。 如需詳細資訊,請參閱 金鑰保存庫價格頁面