如何在地形中跨多个资源启用"azurerm_security_center_subscription_pricing"



我正试图通过TF资源管理安全中心,但遇到了一个错误。

这就是代码的样子:

resource "azurerm_security_center_subscription_pricing" "example" {
count         = var.enabled && var.subscription_pricing_enabled ? 1 : 0
tier          = var.tier
resource_type = "VirtualMachines, AppServices, ContainerRegistry, KeyVaults, KubernetesService, SqlServers, SqlServerVirtualMachines, StorageAccounts, Arm, Dns"

==========================================================================

Error: [0m[0m[1mexpected resource_type to be one of [AppServices ContainerRegistry KeyVaults KubernetesService SqlServers SqlServerVirtualMachines StorageAccounts VirtualMachines], got VirtualMachines, AppServices, ContainerRegistry, KeyVaults, KubernetesService, SqlServers, SqlServerVirtualMachines, StorageAccounts, Arm, Dns[0m
2021-04-03T07:20:07.7838074Z 
2021-04-03T07:20:07.7838690Z [0m  on primary_azure_defender.tf line 54, in resource "azurerm_security_center_subscription_pricing" "example":
2021-04-03T07:20:07.7839390Z   54: resource "azurerm_security_center_subscription_pricing" "example" [4m{[0

非常感谢在这方面的任何帮助。

文档中没有提供有关此用法的详细信息:https://registry.terraform.io/providers/hashicorp/azurerm/latest/docs/resources/security_center_subscription_pricing

在main.tf:中

resource "azurerm_security_center_subscription_pricing" "tier" {
tier          = "Standard"
for_each      = toset(var.security_center_resource_types)
resource_type = each.value
}

在变量.tf:中

variable security_center_resource_types {
description = "List of security center resource types to configure"
type        = list(string)
default = [
"VirtualMachines",
"AppServices",
"KeyVaults",
"SqlServers",
"SqlServerVirtualMachines",
"StorageAccounts",
"Arm",
"Dns",
"Containers",
"OpenSourceRelationalDatabases"

]}

您必须为resource_type只提供一个值,例如:

resource "azurerm_security_center_subscription_pricing" "example" {
count         = var.enabled && var.subscription_pricing_enabled ? 1 : 0
tier          = var.tier
resource_type = "VirtualMachines"

文档和错误消息中列出了可能的值。

最新更新