Question

How to set spaces ACL to public

So I set up a space with CDN. When I copy files to it, they become private by default.

So I set the bucket ACL to public read:

aws s3api --endpoint=https://fra1.digitaloceanspaces.com put-bucket-acl --acl public-read --bucket $MYBUCKETNAME

When I read it back it is indeed public:

aws s3api --endpoint=https://fra1.digitaloceanspaces.com get-bucket-acl --bucket $MYBUCKETNAME
{
    "Owner": {
        "DisplayName": "REDACTED", 
        "ID": "REDACTED"
    }, 
    "Grants": [
        {
            "Grantee": {
                "Type": "Group", 
                "URI": "http://acs.amazonaws.com/groups/global/AllUsers"
            }, 
            "Permission": "READ"
        }, 
        {
            "Grantee": {
                "Type": "CanonicalUser", 
                "DisplayName": "REDACTED", 
                "ID": "REDACTED"
            }, 
            "Permission": "FULL_CONTROL"
        }
    ]
}

However, when I copy new files to the bucket, they’re still set to ‘private’. I have to do a recursive set per file, but this takes a long time.

s3cmd setacl s3://$MYBUCKETNAME/ --acl-public --recursive

How can I set the default ACL to public so that new files are public by default?

Subscribe
Share

This comment has been deleted


Submit an answer
You can type!ref in this text area to quickly search our full set of tutorials, documentation & marketplace offerings and insert the link!

These answers are provided by our Community. If you find them useful, show some love by clicking the heart. If you run into issues leave a comment, or add your own answer to help others.

This comment has been deleted