Я разрабатываю веб-приложение, и в настоящее время у меня есть следующий ACL, назначенный учетной записи AWS, который он использует для доступа к своим данным:
{
"Statement": [
{
"Sid": "xxxxxxxxx", // don't know if this is supposed to be confidential
"Action": [
"s3:*"
],
"Effect": "Allow",
"Resource": [
"arn:aws:s3:::cdn.crayze.com/*"
]
}
]
}
Однако я хотел бы сделать это немного более строгим, чтобы, если наши учетные данные AWS были когда-либо скомпрометированы, злоумышленник не смог уничтожить какие-либо данные.
Из документации видно, что я хочу разрешить только следующие действия: s3:GetObject
и s3:PutObject
, но я специально хочу, чтобы учетная запись имела возможность создавать объекты, которые еще не существуют, т.е. PUT запрос на существующий объект должен быть отклонен. Возможно ли это?