Django/AWS - Произошла ошибка (403) при вызове операции HeadObject: Forbidden

Я пытаюсь настроить свой проект Django для размещения статических изображений на ведрах AWS S3, но когда я пытаюсь загрузить изображение через панель администратора Django, я получаю следующую ошибку

enter image description here

Вот мои настройки в Django

AWS_ACCESS_KEY_ID = 'some_key' 
AWS_SECRET_ACCESS_KEY = 'some_key_aswell' 
AWS_STORAGE_BUCKET_NAME = 'bucket_name'

AWS_S3_FILE_OVERWRITE = False
AWS_DEFAULT_ACL = None
DEFAULT_FILE_STORAGE = 'storages.backends.s3boto3.S3Boto3Storage'

AWS_S3_REGION_NAME = 'us-east-2' 

Настройка политики Cors для ведра

 [
    {
        "AllowedHeaders": [
            "*"
        ],
        "AllowedMethods": [
            "GET",
            "POST",
            "PUT"
        ],
        "AllowedOrigins": [
            "*"
        ],
        "ExposeHeaders": []
    }
]

В роль IAM, используемую машиной (или контейнером), на которой работает ваше приложение Django, необходимо добавить следующую политику IAM:

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
              "s3:GetObject",
            ],
            "Resource": "arn:aws:s3:::<bucket>/<prefix>/*"
        }
    ]
}

Если ваш объект зашифрован, убедитесь, что вы также разрешили вашей IAM-роли использовать ключ KMS, используемый для шифрования объекта.

Вернуться на верх