Я пытаюсь получить доступ к одному из моих хранилищ S3 из моего экземпляра EC2, развернутого ElasticBeanstalk.Мой экземпляр EC2 принадлежит aws -asticbeanstalk-ec2-role , и я предоставил эту роль с AmazonS3FullAccess policy:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": "s3:*",
"Resource": "*"
}
]
}
Тогда политика сегмента выглядит следующим образом:
"Version": "2008-10-17",
"Statement": [
{
"Sid": "eb-ad78f54a-f239-4c90-adda-49e5f56cb51e",
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::XXXXXX:role/aws-elasticbeanstalk-ec2-role"
},
"Action": "s3:PutObject",
"Resource": "arn:aws:s3:::elasticbeanstalk-us-east-XXXXXX/resources/environments/logs/*"
},
{
"Sid": "eb-af163bf3-d27b-4712-b795-d1e33e331ca4",
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::XXXXXX:role/aws-elasticbeanstalk-ec2-role"
},
"Action": [
"s3:ListBucket",
"s3:ListBucketVersions",
"s3:GetObject",
"s3:GetObjectVersion"
],
"Resource": [
"arn:aws:s3:::elasticbeanstalk-us-east-2-XXXXXX",
"arn:aws:s3:::elasticbeanstalk-us-east-2-XXXXXX/resources/environments/*"
]
},
{
"Sid": "eb-58950a8c-feb6-11e2-89e0-0800277d041b",
"Effect": "Deny",
"Principal": {
"AWS": "*"
},
"Action": "s3:DeleteBucket",
"Resource": "arn:aws:s3:::elasticbeanstalk-us-east-2-XXXXXX"
}
]
}
Когда я пытаюсь получить доступ к корзине через SSH-соединение или через скрипт внутри .ebextensions, я получаю ошибку Access Denied 403.Я попытался сделать файлы общедоступными и использовать те же команды, и я отлично работал, но нужные мне файлы не могут быть общедоступными.
Я думаю, что у меня есть правильные политики как для корзины, так и для роли EC2.Возможно, я забыл некоторые детали.
Любая помощь будет приветствоваться.Заранее спасибо, ребята!