我在我的环境中测试了您的场景,并且成功地进行了更改,并将其存储在当前版本中,而之前的版本使用以下代码存储在旧版本中:
provider "azuread" {}
provider "azurerm" {
features{}
}
data "azuread_client_config" "current" {}
data "azuread_application" "appreg" {
display_name="ansumanterraformtest"
}
resource "azuread_application_password" "apppass" {
application_object_id = data.azuread_application.appreg.object_id
end_date_relative = "3h"
}
data "azurerm_key_vault" "kv" {
name = "kvname"
resource_group_name = "ansumantest"
}
resource "azurerm_key_vault_secret" "demo_sp_client_id" {
name = "demo-sp-client-id"
value = data.azuread_application.appreg.application_id
key_vault_id = data.azurerm_key_vault.kv.id
}
resource "azurerm_key_vault_secret" "demo_sp_client_secret" {
name = "demo-sp-client-secret"
value =azuread_application_password.apppass.value
key_vault_id = data.azurerm_key_vault.kv.id
}
输出:
注意:如果 keyvault 中的密钥不是从 terraform 创建的,您可能会收到错误消息。如果它是从门户网站或任何其他来源创建的,那么您必须首先将该秘密导入到 terraform 状态,然后对其进行更改,以便 terraform 可以管理它。
导入命令:
terraform import azurerm_key_vault_secret.example "https://example-keyvault.vault.azure.net/secrets/example/fdf067c93bbb4b22bff4d8b7a9a56217"
参考:
azurerm_key_vault_secret | 资源 | 哈希公司/azurerm | Terraform 注册表