共用方式為


快速入門:使用 PowerShell 佈建並啟動受控 HSM

在此快速入門中,您將使用 PowerShell 建立並啟動 Azure Key Vault 受控 HSM (硬體安全模組)。 受控 HSM 是完全受控、高可用性、單一租用戶、符合標準的雲端服務,可讓您使用經過 FIPS 140-2 層級 3 驗證的 HSM,來保護雲端應用程式的密碼編譯金鑰。 如需受控 HSM 的詳細資訊,請檢閱概觀

必要條件

如果您沒有 Azure 訂用帳戶,請在開始前建立免費帳戶

建立資源群組

資源群組是在其中部署與管理 Azure 資源的邏輯容器。 使用 Azure PowerShell New-AzResourceGroup Cmdlet 在挪威位置建立名為 myResourceGroup 的資源群組。

New-AzResourceGroup -Name "myResourceGroup" -Location "norwayeast"

取得您的主體識別碼

若要建立受控 HSM,您需要 Microsoft Entra 主體識別碼。 若要取得識別碼,請使用 Microsoft Azure PowerShell Get-AzADUser Cmdlet,將您的電子郵件地址傳遞至 "UserPrincipalName" 參數:

Get-AzADUser -UserPrincipalName "<your@email.address>"

您的主體識別碼會以「xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx」格式傳回。

建立受控 HSM

建立受控 HSM 是兩步驟的流程:

  1. 佈建受控 HSM 資源。
  2. 下載稱為「安全性網域」的成品以啟動受控 HSM。

佈建受控 HSM

使用 Azure PowerShell New-AzKeyVaultManagedHsm Cmdlet 來建立新的受控 HSM。 您需要提供一些資訊:

  • 受控 HSM 名稱:由 3 到 24 個字元組成的字串,只能包含數字 (0-9)、字母 (a-z、A-Z) 和連字號 (-)

    重要

    每個受控 HSM 都必須有唯一的名稱。 在下列範例中,將 <your-unique-managed-hsm-name> 取代為您受控 HSM 的名稱。

  • 資源群組名稱:myResourceGroup

  • 地點: 挪威東部

  • 您的主體識別碼:將您在上一節中取得的 Microsoft Entra 主體識別碼傳遞給 "Administrator" 參數。

New-AzKeyVaultManagedHsm -Name "your-unique-managed-hsm-name" -ResourceGroupName "myResourceGroup" -Location "norwayeast" -Administrator "your-principal-ID" -SoftDeleteRetentionInDays "# of days to retain the managed hsm after softdelete"

注意

執行 create 命令可能需要幾分鐘的時間。 成功傳回之後,您即可啟動 HSM。

此 Cmdlet 的輸出會顯示新建立受控 HSM 的屬性。 記下這兩個屬性:

  • Name:您為受控 HSM 提供的名稱。
  • HsmUri:在範例中,HsmUri 是 https://<your-unique-managed-hsm-name>.managedhsm.azure.net/。 透過其 REST API 使用保存庫的應用程式必須使用此 URI。

此時,您的 Azure 帳戶是唯一獲得授權在此新 HSM 上執行任何作業的帳戶。

啟動您的受控 HSM

在 HSM 啟動前,所有資料平面命令都會停用。 您將無法建立金鑰或指派角色。 只有在 create 命令執行期間指派的指定管理員,才可以啟用 HSM。 若要啟動 HSM,您必須下載安全性網域

若要啟動 HSM,您需要:

  • 提供至少三個 RSA 金鑰組 (最多 10 組)
  • 指定解密安全性網域所需的金鑰數目下限 (稱為「仲裁」)

若要啟動 HSM,您至少要將 3 個 (最多 10 個) RSA 公開金鑰傳送至 HSM。 HSM 會使用這些金鑰將安全性網域加密,並加以傳回。 此安全性網域下載順利完成後,您的 HSM 即可供使用。 您也需要指定仲裁,這是解密安全性網域所需的私密金鑰數目下限。

下列範例示範如何使用 openssl (可用於這裡的 Windows) 以產生自我簽署憑證。

openssl req -newkey rsa:2048 -nodes -keyout cert_0.key -x509 -days 365 -out cert_0.cer
openssl req -newkey rsa:2048 -nodes -keyout cert_1.key -x509 -days 365 -out cert_1.cer
openssl req -newkey rsa:2048 -nodes -keyout cert_2.key -x509 -days 365 -out cert_2.cer

注意

即使憑證已「已過期」,它仍可用來還原安全性網域。

重要

請安全地建立並儲存在此步驟中產生的 RSA 金鑰組和安全性網域檔案。

使用 Azure PowerShell Export-AzKeyVaultSecurityDomain Cmdlet 來下載安全性網域並啟動您的受控 HSM。 下列範例會使用 3 個 RSA 金鑰組 (此命令只需要公開金鑰),並將仲裁設定為 2。

Export-AzKeyVaultSecurityDomain -Name "<your-unique-managed-hsm-name>" -Certificates "cert_0.cer", "cert_1.cer", "cert_2.cer" -OutputPath "MHSMsd.ps.json" -Quorum 2

請安全地儲存安全性網域檔案和 RSA 金鑰組。 進行災害復原,或建立另一個共用相同安全性網域的受控 HSM 以便共用金鑰時,將需要這些資料。

成功下載安全性網域後,您的 HSM 會處於作用中狀態,並可供您使用。

清除資源

此集合中的其他快速入門和教學課程會以本快速入門為基礎。 如果您打算繼續進行其他快速入門和教學課程,您可以讓這些資源留在原處。

當不再需要時,您可以使用 Azure PowerShell Remove-AzResourceGroup Cmdlet 來移除資源群組和所有相關資源。

Remove-AzResourceGroup -Name "myResourceGroup"

警告

刪除資源群組會將受控 HSM 置於虛刪除狀態。 受控 HSM 會繼續計費,直到清除為止。 請參閱受控 HSM 虛刪除和清除保護

下一步

在本快速入門中,您已建立並啟動受控 HSM。 若要深入了解受控 HSM 以及要如何將其與應用程式整合,請繼續閱讀下列文章: