В этом примере есть два допустимых имени тега для ресурса.
- Среда
- Клиент
Я хочу создать политику, которая оценивает ресурс как несовместимый, если ему присвоен тег, который не соответствует ни одному из вышеперечисленных. (Обратите внимание, что я хочу избегать использования параметров, предпочитая, чтобы допустимые имена тегов были «встроены» в определение.)
Я пробовал следующий код, однако он отмечает ресурсы как соответствующие, если у них есть тег, отличный от указанного выше.
"mode": "Indexed",
"policyRule": {
"if": {
"allOf": [
{
"field": "tags",
"exists": "true"
},
{
"field": "tags",
"notContainsKey": "Environment"
},
{
"field": "tags",
"notContainsKey": "Client"
}
]
},
"then": {
"effect": "deny"
}
},
"parameters": {}
}
Может ли кто-нибудь увидеть, где я ошибаюсь?