Ошибка Boto3 S3 - AccessDenied при вызове PutObjectAcl - PullRequest
1 голос
/ 15 марта 2019

Попытка создать общедоступный URL-адрес для файла, который был загружен в корзину S3, с использованием следующего кода:

client = boto3.client('s3', config=botocore.client.Config(signature_version=botocore.UNSIGNED))
client.put_object_acl(Bucket="my-bucket", Key=filename, ACL='public-read')

выдает исключение:

botocore.exceptions.ClientError: An error occurred (AccessDenied) when calling the PutObjectAcl operation: Access Denied

Моя корзина S3 имеет следующую политику:

{
    "Version": "2008-10-17",
    "Statement": [
        {
            "Sid": "",
            "Effect": "Allow",
            "Principal": {
                "AWS": "*"
            },
            "Action": [
                "s3:GetObject",
                "s3:GetObjectAcl",
                "s3:PutObjectAcl"
            ],
            "Resource": "arn:aws:s3:::my-bucket/*",
            "Condition": {}
        }
    ]
}

Любые советы будут приветствоваться! Спасибо

...