使用 Azure PowerShell 为虚拟机设置 Key Vault
适用于:✔️ Linux VM ✔️ Windows VM ✔️ 灵活规模集
注意
Azure 提供两种不同的部署模型用于创建和处理资源:Azure 资源管理器模型和经典模型。 本文介绍了资源管理器部署模型的使用。 对于新部署,建议使用资源管理器部署模型而非经典部署模型。
在 Azure Resource Manager 堆栈中,密码/证书被建模为密钥保管库资源提供程序所提供的资源。 若要了解有关 Key Vault 的详细信息,请参阅什么是 Azure Key Vault?
注意
- 为了让密钥保管库能与 Azure Resource Manager 虚拟机搭配使用,必须将密钥保管库上的 EnabledForDeployment 属性设置为 true。 可以在各种客户端中执行此操作。
- 需要在与虚拟机相同的订阅和位置中创建 Key Vault。
使用 PowerShell 设置密钥保管库
若要使用 PowerShell 创建密钥保管库,请参阅使用 PowerShell 在 Azure 密钥保管库中设置和检索机密。
对于新的密钥保管库,可以使用此 PowerShell cmdlet:
New-AzKeyVault -VaultName 'ContosoKeyVault' -ResourceGroupName 'ContosoResourceGroup' -Location 'China East' -EnabledForDeployment
对于现有的密钥保管库,可以使用此 PowerShell cmdlet:
Set-AzKeyVaultAccessPolicy -VaultName 'ContosoKeyVault' -EnabledForDeployment
使用 CLI 设置密钥保管库
若要使用命令行接口 (CLI) 创建密钥保管库,请参阅使用 CLI 管理密钥保管库。
使用 CLI 时,必须先创建密钥保管库,然后分配部署策略。 可以使用以下命令来执行此操作:
az keyvault create --name "ContosoKeyVault" --resource-group "ContosoResourceGroup" --location "ChinaEast"
然后,要启用密钥保管库以用于模板部署,请运行以下命令:
az keyvault update --name "ContosoKeyVault" --resource-group "ContosoResourceGroup" --enabled-for-deployment "true"
使用模板设置密钥保管库
使用模板时,必须将 Key Vault 资源的 enabledForDeployment
属性设置为 true
。
{
"type": "Microsoft.KeyVault/vaults",
"name": "ContosoKeyVault",
"apiVersion": "2015-06-01",
"location": "<location-of-key-vault>",
"properties": {
"enabledForDeployment": "true",
....
....
}
}
有关使用模板创建密钥保管库时可以配置的其他选项,请参阅 Create a key vault(创建密钥保管库)。
注意
必须对从 GitHub 存储库“azure-quickstart-templates”下载或引用的模板进行修改,以适应由世纪互联运营的 Microsoft Azure 环境。 例如,替换某些终结点(将“blob.core.windows.net”替换为“blob.core.chinacloudapi.cn”,将“cloudapp.azure.com”替换为“chinacloudapp.cn”);必要时更改某些不受支持的位置、VM 映像、VM 大小、SKU 以及资源提供程序的 API 版本。