Victor
Victor

Reputation: 23922

Make a bucket public in Amazon S3

How can I set a bucket in Amazon S3 so all the files are publicly read-only by default?

Upvotes: 332

Views: 189261

Answers (2)

Intrications
Intrications

Reputation: 16952

You can set a bucket policy as detailed in this blog post:

http://ariejan.net/2010/12/24/public-readable-amazon-s3-bucket-policy/


As per @robbyt's suggestion, create a bucket policy with the following JSON:

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

Important: replace bucket in the Resource line with the name of your bucket.

Upvotes: 538

evaneus
evaneus

Reputation: 759

Amazon provides a policy generator tool:

https://awspolicygen.s3.amazonaws.com/policygen.html

After that, you can enter the policy requirements for the bucket on the AWS console:

https://console.aws.amazon.com/s3/home

Upvotes: 61

Related Questions