【发布时间】:2021-07-19 22:21:31
【问题描述】:
我正在尝试使用“azurerm_virtual_machine_extension”启用磁盘加密。
resource "azurerm_virtual_machine_extension" "disk-encryption-web" {
count = var.webvmcount
name = "DiskEncryption"
virtual_machine_id = element(azurerm_windows_virtual_machine.webwindowsvm.*.id, count.index+1)
publisher = "Microsoft.Azure.Security"
type = "AzureDiskEncryption"
type_handler_version = "2.2"
settings = <<SETTINGS
{
"EncryptionOperation": "EnableEncryption",
"KeyVaultURL": "https://${var.envname}disk.vault.azure.net",
"KeyVaultResourceId": "/subscriptions/XXXXXXX/resourceGroups/ce-poc-terraform/providers/Microsoft.KeyVault/vaults/${var.envname}disk",
"KeyEncryptionKeyURL": "https://${var.envname}disk.vault.azure.net/keys/diskencryptionkey/output.kvurl.value",
"KekVaultResourceId": "/subscriptions/XXXXXXXX/resourceGroups/ce-poc-terraform/providers/Microsoft.KeyVault/vaults/${var.envname}disk",
"KeyEncryptionAlgorithm": "RSA-OAEP",
"VolumeType": "All"
}
SETTINGS
}
属性“KeyEncryptionKeyURL”需要带有版本号的KV的URL。我不想对版本进行硬编码,因为它可以更改。 我已经可以使用
resource "azurerm_key_vault_key" "key" {
name = "diskencryptionkey"
key_vault_id = azurerm_key_vault.peripherialsdiskencrypt.id
key_type = "RSA"
key_size = 2048
key_opts = [
"decrypt",
"encrypt",
"sign",
"unwrapKey",
"verify",
"wrapKey",
]
}
output "kvurl" {
value = azurerm_key_vault_key.key.version
}
输出给出了版本,但我不知道如何获取输出并将其放入“KeyEncryptionKeyURL”属性中。 任何帮助表示赞赏。
【问题讨论】:
标签: azure variables terraform output azure-keyvault