У меня есть несколько экземпляров AWS EC2, которые имеют уникальные теги имен вида ***-manager
(три уникальных символа, затем -manager
).
У меня есть несколько блоков S3 (и вложенных в них папок) с похожими трехзначными идентификаторами в их именах, к которым мне нужно ограничить доступ, в зависимости от того, какой EC2 запрашивает.
Как можно написать одну политику AWS для подключения к каждому EC2, которая будет выполнять следующие действия:
Блок docker.***.mysite.com
должен быть доступен только для EC2, чья метка имени имеет значение ***-manager
. Действие - это что-нибудь, то есть *
.
Папка downloads.mysite.com/***/
должна быть доступна только для EC2, имя тега которого имеет значение ***-manager
. Действие ListBucket
и GetObject
с ограничением префикса.
Папка downloads.mysite.com/common/
должна быть доступна любому EC2
EC2 не должен иметь доступа к корню downloads.mysite.com/
или знать о нем что-либо (т. Е. Не может выполнять никаких действий S3 вне common
и его подпапки ***
.
ПРИМЕЧАНИЕ. Если нелегко / невозможно извлечь трехбуквенный идентификатор из тега имени EC2 для «передачи» в ресурсную часть политики, я могу легко добавить новый тег в каждый EC2, который имеет * 1036. * в качестве значения - но все равно придется как-то «передать» это Ресурсу в определении политики.