Я хочу создать модуль для шлюза приложений Azure.
Я хочу отключить некоторые группы правил с помощью встроенного блока disabled_rule_group, но как я могу сделать это настраиваемым в модуле? Это должна быть необязательная переменная.
Я нашел for_each
для вложенных блоков.
Пример:
variable "disabled_rule_groups" {
default = [
{
rule_group_name = "REQUEST-931-APPLICATION-ATTACK-RFI"
rules = [
931100,
931130]
},
{
rule_group_name = "REQUEST-942-APPLICATION-ATTACK-SQLI"
rules = [
942100
]
}
]
}
resource "azurerm_application_gateway" "AppGateway" {
dynamic "disabled_rule_group" {
for_each = [var.disabled_rule_groups]
content {
rule_group_name = disabled_rule_group.value.rule_group_name
rules = disabled_rule_group.value.rules
}
}
}
Однако это не работает.
Есть ли у кого-нибудь идеи, как исправить синтаксис?
Кроме того, переменная disabled_rule_groups
должна быть необязательной. Поэтому, если не установлено disabled_rule_groups, блок должен быть отключен. Как я могу этого добиться? Нужна ли мне вторая логическая переменная и if для каждой из них?