Я пытаюсь установить групповую политику с IAM, чтобы предоставить доступ пользователям в определенном регионе с определенным vpc. Что касается документов AWS, попытка использовать идентификатор vpc для фильтрации экземпляров, поскольку тег ресурса не работает с ec2 (ResourceTag был бы лучшим вариантом, если бы он работал с EC2). Создал следующее правило для того же, но это не помогло,
{ "Version": "2012-10-17",
"Statement": [ {
"Action": [
"ec2:RunInstances",
"ec2:StartInstances",
"ec2:Describe*" ],
"Resource": "*",
"Effect": "Allow",
"Condition": {
"StringEquals": {
"ec2:Vpc": "arn:aws:ec2:us-west-2:*:vpc/vpc-123456"
}
}
} ] }
в результате на странице EC2 появится сообщение «Произошла ошибка при получении данных экземпляра».
Могу я что-нибудь посоветовать исправить это?
Спасибо
Спасибо за ответ, Рико :-)
К сожалению, данная политика не сработала для меня в соответствии с моими требованиями.
Необходимо предоставить доступ пользователю для определенного региона, и пользователь должен иметь доступ к экземпляру, основанному на конкретном теге ресурса, VPC, подсети или группе безопасности.
У пользователя не должно быть привилегий запускать или редактировать что-либо, и пользователь должен иметь возможность перечислять экземпляры на основе фильтра, как указано выше, для просмотра сведений об экземпляре (только для чтения).
Принимая во внимание вышеупомянутые аспекты, я определил аналогичную политику с двойным условием, поскольку ARN плохо работает с ресурсами для меня.
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": "ec2:Describe*",
"Resource": "*",
"Condition": {
"StringEquals": {
[
"ec2:Region": "us-west-2",
"ec2:ResourceTag/Name": "Test"
]
}
}
}
]
}
Когда я использую ARN для ресурса, он не работает для меня в формате ниже,
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": "ec2:Describe*",
"Resource": "arn:aws:ec2:us-west-2:1234567890:*/*",
"Condition": {
"StringEquals": {
"ec2:ResourceTag/Name": "Test"
}
}
}
]
}
Я пробовал фильтровать экземпляры с помощью тега ресурса, идентификатора экземпляра, группы безопасности и подсети.
Теперь из вашего ответа я понимаю, что фильтрация VPC на данный момент невозможна.
Пожалуйста, обратитесь к изображению для тега ресурса моего экземпляра.
Будем очень признательны за Ваш быстрый ответ.
Заранее спасибо!
Я обсудил с архитектором решений AWS следующее обновление:
API-интерфейсы Describe * для EC2 пока не могут быть ограничены определенными ресурсами. В первых выпусках разрешений на уровне ресурсов для EC2 мы сосредоточились на тех действиях, которые создают новые или изменяют существующие ресурсы. См. http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/iam-policies-for-amazon-ec2.html#ec2-supported-iam-actions-resources, чтобы увидеть полный список. действий в EC2, которые поддерживают разрешения на уровне ресурсов.
Мы работаем над расширением поддержки управления доступом на уровне ресурсов для большего числа действий, но мы не можем указать дату, когда это станет доступно для API-интерфейсов Describe *.
Поддерживаются ли разрешения на уровне ресурсов или нет, зависит от действия, см. Ссылку выше. В частности, на данный момент невозможно ограничить EC2 Describe * Actions ресурсами, но указанный выше ARN можно использовать для ограничения действий, которые изменяют ресурсы.
Тег ресурса, подсеть, группа безопасности и vpc поддерживаются в разделе «Условие» заявления политики IAM, но только для определенных действий - см. http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/iam-policy-for-amazon-ec2.html#amazon-ec2-keys, чтобы узнать о доступных ключах. Однако тег ресурса, подсеть, группа безопасности и vpc не поддерживаются в Условиях для API Describe *.
Наконец, я просто закончил обходной путь, ограничив пользователя только регионом.