У меня есть сценарий использования, когда я создаю набор ресурсов, таких как экземпляры EC2 и корзины S3, используя CloudFormation.Я вижу, что Cloudformation добавляет теги как к экземплярам EC2, так и к сегментам S3 с тегом в формате
aws:cloudformation:stack-name: <stack-name>
Я пытаюсь написать политику IAM, которая имеет разрешения на основе тегов.Политика выглядит следующим образом:
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "AllowToDescribeAll",
"Effect": "Allow",
"Action": [
"ec2:*",
"s3:*"
],
"Resource": "*",
"Condition": {
"StringEquals": {
"aws:ResourceTag/aws:cloudformation:stack-name": "mystackname"
}
}
},
{
"Sid": "AllPermissions",
"Effect": "Allow",
"Action": [
"ec2:Describe*"
],
"Resource": "*"
}
]
}
Теперь, когда я пытаюсь выполнить вызов API объекта S3 put, используя CLI, я вижу разрешения AccessDenied.То же самое происходит, когда я пытаюсь завершить экземпляр, который имеет этот конкретный тег.Я не смог найти никакой конкретной документации IAM, в которой упоминается, что мы не можем использовать теги с префиксом aws:
в политиках IAM.Кто-нибудь знает, какая проблема может быть?Или дело в том, что контекстный ключ aws:ResourceTag
недействителен?