Нет, это невозможно.
Вы запрашиваете политику, которая применяется к нескольким сегментам. Следовательно, это должна быть политика IAM , потому что политика сегмента применяется только к определенному сегменту c.
Хотя политики IAM допускают использование подстановочных знаков, их возможности довольно ограничены. Например, эта политика будет отображаться для работы и действительно предоставляет доступ к сегменту, заканчивающемуся на -output
:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"s3:PutObject",
"s3:GetObject"
],
"Resource": "arn:aws:s3:::*-output/*"
}
]
}
Итак, эта команда будет успешной:
aws s3 cp foo-output/bar.txt .
Однако он также разрешает эту команду:
aws s3 cp foo/results-output/bar.txt .
Это потому, что подстановочные знаки в политике не различают часть ARN, которая ссылается на имя корзины и путь / имя объекта .
Таким образом, возможно, что они могут получить доступ к корзине, которая не заканчивается на -output
. Таким образом, это небезопасная политика.