Недопустимый участник группы политики корзины AWS s3
Это продолжение из Как я могу принудительно загружать типы файлов с политикой корзины AWS S3
При применении политики ведра:
{
"Version":"2008-10-17",
"Statement": [
{
"Sid":"AddPerm",
"Effect":"Allow",
"Principal": { "AWS": "arn:aws:iam::111122223333:group/admins" },
"Action": "s3:PutObject",
"Resource": "arn:aws:s3:::bucket/*.txt"
}
]
}
Группа "администраторы" определенно существует, но я получаю ошибку: "Недопустимый принципал в политике - "AWS": "arn:aws:iam::111122223333: группа / администраторы ""
Почему это не признается?
2 ответа
Невозможно использовать группы в Principal
в данный момент. См. https://forums.aws.amazon.com/message.jspa?messageID=356160
Добавляю к ответу yegor256:
Вы не можете идентифицироватьuser group
какprincipal
вpolicy
(например, политика на основе ресурсов), поскольку группы относятся к разрешениям, а не к аутентификации, а субъекты являются аутентифицированными объектами IAM.
Только в политике можно указать любой из следующих субъектов:
- Учетная запись AWS и пользователь root
- Роли IAM
- Ролевые сессии
- пользователи IAM
- Сеансы федеративных пользователей
- Сервисы AWS
- Все директора
Итак, решить проблему можно следующим образом:
Создание политики IAM с любыми ограничениями и разрешениями и прикрепление этой политики кUser Group
вы хотите (админы в вашем случае),
или вы можете указать роль IAM, связанную с группой. и добавьте к ней все необходимые ограничения или разрешения, но убедитесь, что эта роль прикреплена только к этой группе, или вы знаете, кто предоставит разрешения.
тогда вам нужно использовать ARN роли IAM вместо ARN группы. ARN роли IAM будет выглядеть следующим образом:
arn:aws:iam::111122223333:role/admins