Я пытаюсь загрузить файл из частного сегмента S3 с помощью PHP SDK (на экземпляре EC2).
Я создаю роль IAM и прикрепляю к ней AmazonS3FullAccess
.
Я создал корзину S3, и это политика корзины:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::206193043625:role/MyRoleName"
},
"Action": [
"s3:PutObject",
"s3:GetObject",
"s3:DeleteObject"
],
"Resource": "arn:aws:s3:::config-files/*"
}
]
}
Затем на стороне PHP я делаю запрос curl для http://169.254.169.254/latest/meta-data/iam/security-credentials/MyRoleName
, я получаю JSON обратно, создаю экземпляр S3Client и пытаюсьскачайте его, но я получаю это сообщение об ошибке:
Ошибка выполнения «GetObject» на «https://files.s3.us -west-2.amazonaws.com / us-west-2__config.php ";Ошибка HTTP AWS: ошибка клиента: GET https://files.s3.us-west-2.amazonaws.com/us-west-2__config.php
, в результате которого был получен ответ 403 Forbidden
:
AccessDenied
Access DeniedC84D80 (усечено ...) AccessDenied (клиент): Доступ запрещен -
Отказано в доступе
Отказано в доступеC84D80DE6B2D35FD6sDWIYK98nSH + Oa8lBH7lD91rfHospDeo0jZKFDdo0CaeY8aX6Wb / s2ja5qeYxCBuLwDJ27 * * * 0