Документ политики IAM с несколькими ключевыми условиями
У меня есть ключ API, и я хочу разрешить разработчикам просматривать значение ключа API только в том случае, если ключ API имеет любой из следующих тегов (пара ключ-значение)
# allow access if API key has any one of Tag with corresponding values
app: demo
OR
default:true
Это текущее заявление политики IAM.
- Effect: Allow
Action: apigateway:GET
Resource: arn:aws:apigateway:us-east-1::/apikeys/*
Condition:
StringEquals:
aws:ResourceTag/app:
- "${aws:PrincipalTag/app}"
aws:ResourceTag/default:
- "true"
Но, судя по документам AWS , логика оценкиkey1:value1 AND key2:value2
что значитallow
доступ только в том случае, если ключи API имеют оба тега с соответствующими значениями, но мне нужноkey1:value1 OR key2:value2
. Не могли бы вы написать оператор условия для этого с помощью одного оператора?
1 ответ
Вы можете использоватьForAnyValue:StringEquals:
ключ условия:
- Effect: Allow
Action: apigateway:GET
Resource: arn:aws:apigateway:us-east-1::/apikeys/*
Condition:
ForAnyValue:StringEquals:
aws:ResourceTag/app:
- "${aws:PrincipalTag/app}"
aws:ResourceTag/default:
- "true"