права" для работы с несколькими EC2-инстансами. Точнее, мне нужно, чтобы юзер мог:
- открывать порты
- делать снапшоты
- переустанавливать образ (условно, стереть всё и поставить свежую ubuntu)
- перезапускать инстанс
- получить доступ к инстансу через VNC/serial port
Я попросил нашего админа сделать такого юзера, но после нескольких часов активного взаимодействия с AWS админ плюнул и дал мне рутовые права в том числе на прод, что, мягко говоря, меня пугает.
Я попробовал создать ещё одного юзера и применить к нему policy, которое разрешит мне пользоваться исключительно затеганными (условно, owner=%username%) ресурсами, но половина фич таки не работает. Осложняется всё тем, что это вообще мой первый раз глубокой работы с AWS.
Вот так выглядит мой текущий IAM policy:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": "ec2:Describe*",
"Resource": "*"
},
{
"Effect": "Allow",
"Action": [
"ec2:*",
"ec2-instance-connect:*"
],
"Resource": "arn:aws:ec2:*:*:*/*",
"Condition": {
"StringEquals": {
"aws:ResourceTag/owner": "embedded"
}
}
},
{
"Effect": "Allow",
"Action": [
"ec2:ModifySecurityGroupRules"
],
"Resource": "*"
},
{
"Effect": "Allow",
"Action": "ssm:*",
"Resource": "*"
}
]
}
Тут, например, я вообще даю доступ ко всем security groups, и я так и не понял, как получить доступ к тегам security group и таки дать права исключительно к нескольким группам. Может быть, есть где-то готовый пример, как вообще нормальные люди дают полные доступ к нескольким инстансам? Я читал документацию (Controlling access to AWS resources using tags), но там слишком уж базовый пример, который мало что в итоге действительно делает.
1. Сделай политику 2. Создай роль 3. Создай политику relationship определи своего юзера как доверенное 4. Делай switch role
Обсуждают сегодня