2

我正在使用 Terraform 资源random_string为 VM 的本地管理员帐户生成密码。对于 Windows 虚拟机,我从块admin_password下的属性中调用资源。os_profile然后,我想使用属性设置为的azurerm_key_vault_secret资源将密码(在同一部署中)写入 Key Vault Secret 。当我这样做时,它会引发以下错误:value${azurerm_virtual_machine.vm.os_profile.admin_password}

Resource 'azurerm_virtual_machine.vm' does not have attribute 'os_profile.admin_password' for variable 'azurerm_virtual_machine.vm.os_profile.admin_password

我是在做错什么,还是只是不支持?我可以在运行 VM 部署之前在单独的部署中创建 Secret,然后使用data资源引用该值,但对于可能创建多个 VM(数量不同)的部署,最好使用该count.index方法创建它们。

4

1 回答 1

3

它不受支持,创建 vm 后无法读取密码,只能更改密码(不能使用 create\edit vm rest 调用)。所以你需要将它保存到一个临时变量并保存到 KV,或者将它保存到 KV 并让 VM 从 KV 中提取该秘密。

于 2019-01-05T19:25:20.167 回答