快速入門:使用 ARM 範本建立受控 HSM
本快速入門說明如何使用 Azure Resource Manager 範本 (ARM 範本) 建立 Azure Key Vault 受控 HSM。 受控 HSM 是完全受控、高可用性、單一租用戶、符合標準的雲端服務,可讓您使用經過 FIPS 140-2 層級 3 驗證的 HSM,來保護雲端應用程式的密碼編譯金鑰。
Azure Resource Manager 範本是一個 JavaScript 物件標記法 (JSON) 檔案,會定義專案的基礎結構和設定。 範本使用宣告式語法。 您可以描述預期的部署,而不需要撰寫程式設計命令順序來建立部署。
如果您的環境符合必要條件,而且您很熟悉 ARM 範本,請選取 [部署至 Azure] 按鈕。 範本會在 Azure 入口網站中開啟。
必要條件
如果您沒有 Azure 訂用帳戶,請在開始前建立免費帳戶。
在 Azure Cloud Shell 中使用 Bash 環境。 如需詳細資訊,請參閱 Azure Cloud Shell 中的 Bash 快速入門。
若要在本地執行 CLI 參考命令,請安裝 Azure CLI。 若您在 Windows 或 macOS 上執行,請考慮在 Docker 容器中執行 Azure CLI。 如需詳細資訊,請參閱〈如何在 Docker 容器中執行 Azure CLI〉。
如果您使用的是本機安裝,請使用 az login 命令,透過 Azure CLI 來登入。 請遵循您終端機上顯示的步驟,完成驗證程序。 如需其他登入選項,請參閱使用 Azure CLI 登入。
出現提示時,請在第一次使用時安裝 Azure CLI 延伸模組。 如需擴充功能詳細資訊,請參閱使用 Azure CLI 擴充功能。
執行 az version 以尋找已安裝的版本和相依程式庫。 若要升級至最新版本,請執行 az upgrade。
檢閱範本
本快速入門中使用的範本是來自 Azure 快速入門範本:
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"metadata": {
"_generator": {
"name": "bicep",
"version": "0.5.6.12127",
"templateHash": "9933229425431379390"
}
},
"parameters": {
"managedHSMName": {
"type": "string",
"metadata": {
"description": "String specifying the name of the managed HSM."
}
},
"location": {
"type": "string",
"defaultValue": "[resourceGroup().location]",
"metadata": {
"description": "String specifying the Azure location where the managed HSM should be created."
}
},
"initialAdminObjectIds": {
"type": "array",
"metadata": {
"description": "Array specifying the objectIDs associated with a list of initial administrators."
}
},
"tenantId": {
"type": "string",
"defaultValue": "[subscription().tenantId]",
"metadata": {
"description": "String specifying the Azure Active Directory tenant ID that should be used for authenticating requests to the managed HSM."
}
},
"softRetentionInDays": {
"type": "int",
"defaultValue": 7,
"maxValue": 90,
"minValue": 7,
"metadata": {
"description": "Specifies the number of days that managed Key Vault will be kept recoverable if deleted. If you do not want to have soft delete enabled, set value to 0."
}
}
},
"resources": [
{
"type": "Microsoft.KeyVault/managedHSMs",
"apiVersion": "2021-04-01-preview",
"name": "[parameters('managedHSMName')]",
"location": "[parameters('location')]",
"sku": {
"name": "Standard_B1",
"family": "B"
},
"properties": {
"enableSoftDelete": "[greater(parameters('softRetentionInDays'), 0)]",
"softDeleteRetentionInDays": "[if(equals(parameters('softRetentionInDays'), 0), null(), parameters('softRetentionInDays'))]",
"enablePurgeProtection": false,
"tenantId": "[parameters('tenantId')]",
"initialAdminObjectIds": "[parameters('initialAdminObjectIds')]",
"publicNetworkAccess": "Enabled",
"networkAcls": {
"bypass": "None",
"defaultAction": "Allow"
}
}
}
]
}
範本中定義的 Azure 資源:
- Microsoft.KeyVault/managedHSMs:建立 Azure Key Vault 受控 HSM。
部署範本
此範本需要與您的帳戶相關聯的物件識別碼。 若要尋找該識別碼,請使用 Azure CLI az ad user show 命令,將您的電子郵件地址傳至 --id
參數。 您可以使用 --query
參數,將輸出限定為物件識別碼。
az ad user show --id <your-email-address> --query "objectId"
您可能也需要租用戶識別碼。 若要尋找該識別碼,請使用 Azure CLI az ad user show 命令。 您可以使用 --query
參數,將輸出限定為租用戶識別碼。
az account show --query "tenantId"
您現在可以部署 ARM 範本:
選取以下影像來登入 Azure 並開啟範本。 此範本會建立受控 HSM。
選取或輸入下列值。 除非另有指定,否則使用預設值來建立受控 HSM。
- 訂用帳戶:選取 Azure 訂用帳戶。
- 資源群組:選取 [新建],輸入 "myResourceGroup" 作為名稱,然後選取 [確定]。
- 位置:選取位置。 例如, 挪威東部。
- managedHSMName:輸入受控 HSM 的名稱。
- 租用戶 ID: 範本功能會自動擷取您的租用戶識別碼;請勿變更預設值。 如果沒有值,請輸入您上面擷取的租用戶標識碼。
- initialAdminObjectIds:輸入您在上面擷取的物件識別碼。
選取 [購買] 。 在成功部署了受控 HSM 之後,您會收到通知:
Azure 入口網站用於部署範本。 除了 Azure 入口網站以外,您也可以使用 Azure PowerShell、Azure CLI 和 REST API。 若要了解其他部署方法,請參閱部署範本。
驗證部署
您可以使用 Azure CLI az keyvault list 命令來確認已建立受控 HSM。 如果您將結果格式化為資料表,您會發現輸出更容易閱讀:
az keyvault list -o table
您應會看到新建立的受控 HSM 名稱。
清除資源
此集合中的其他快速入門和教學課程會以本快速入門為基礎。 如果您打算繼續進行後續的快速入門和教學課程,您可以讓這些資源留在原處。
若不再需要,您可以使用 Azure CLI az group delete 命令來移除資源群組和所有相關資源:
az group delete --name "myResourceGroup"
警告
刪除資源群組會將受控 HSM 置於虛刪除狀態。 受控 HSM 會繼續計費,直到清除為止。 請參閱受控 HSM 虛刪除和清除保護
下一步
在本快速入門中,您已建立受控 HSM。 在啟用受控 HSM 之前,此受控 HSM 將無法完全運作。 請參閱啟動受控 HSM,以了解如何啟動您的 HSM。
- 閱讀受控 HSM 的概觀
- 了解如何管理受控 HSM 中的金鑰
- 檢閱受控 HSM 最佳做法