使用Terraform为虚拟机密码创建Key Vault机密

时间:2019-01-05 19:21:29

标签: azure terraform terraform-provider-azure

我正在使用Terraform资源+为VM的本地Administrator帐户生成密码。对于Windows VM,我正在random_string块下的admin_password属性中调用资源。然后,我想使用os_profile资源并将azurerm_key_vault_secret属性设置为value,将密码(在同一部署中)写入Key Vault Secret。当我这样做时,它将引发以下错误:

${azurerm_virtual_machine.vm.os_profile.admin_password}

我是在做错什么还是只是不被支持?我可以在运行VM部署之前在单独的部署中创建Secrets,然后使用Resource 'azurerm_virtual_machine.vm' does not have attribute 'os_profile.admin_password' for variable 'azurerm_virtual_machine.vm.os_profile.admin_password资源引用该值,但是对于可能创建多个VM(数量不定)的部署,最好使用{{ 1}}方法。

1 个答案:

答案 0 :(得分:1)

它不受支持,创建虚拟机后无法读取密码,只能更改密码(不能与create \ edit vm rest调用一起使用)。因此,您需要将其保存到一个临时变量中,然后将其保存到KV中,或者将其保存到KV中,并使VM从KV中提取该秘密。