Я пытаюсь установить роль для azure реестра контейнеров для нескольких участников службы
variable "custom_role_list" {
type = list(object ({ service_principal_id = string, role = string }) )
}
Когда я пытаюсь установить его из модуля ресурсов, я не уверен, что это правильный путь?
resource "azurerm_role_assignment" "ad_sp_role_assignment" {
scope = azurerm_container_registry.acr.id
for_each = var.custom_role_list
role_definition_name = each.value.role
principal_id = each.value.service_principal_id
}
По сути, я пытаюсь настроить реестр контейнера azure для работы с несколькими субъектами службы с указанными c ролями доступа.
Ниже приведено определение var.
custom_role_list = [
{
service_principal_id = aserviceprincipal.id
role = "Contributor"
},
{
service_principal_id = bserviceprincipal.id
role = "Contributor"
}
]
Когда я выполняю его, я получаю следующую ошибку.
Error: Invalid for_each argument
on ../modules/az-acr/main.tf line 46, in resource "azurerm_role_assignment" "ad_sp_role_assignment":
46: for_each = var.custom_role_list
The given "for_each" argument value is unsuitable: the "for_each" argument
must be a map, or set of strings, and you have provided a value of type list
of object.
Пожалуйста, если кто-то может помочь, будет очень полезен. спасибо!