The default CORS policy doesn’t allow S3 content to other origins, even if the repository is public or hosting a static website. To allow the resources accessible to other domains, you need to update the S3 buckets CORS policy.

You can quickly enable cross-origin resource sharing (CORS) on your Amazon S3 buckets, with the following steps:

  1. Log into the AWS Management Console.
  2. Select S3 under the Services
  3. Select your S3 bucket.
  4. Go to the Permissions tab.
  5. Click Edit the Cross-origin resource sharing (CORS) section.
  6. Paste the below JSON content in editor:

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    15

    16

    17

    18

    19

    20

    21

    22

    23

    24

    [

        {

            “AllowedOrigins”: [

                “*”

            ],

            “AllowedMethods”: [

                “GET”

            ],

            “MaxAgeSeconds”: 3000,

            “ExposeHeaders”: [

                 “Content-Range”,

                 “Content-Length”,

                 “ETag”

            ],

            “AllowedHeaders”: [

                “Authorization”,

                “Content-Range”,

                “Accept”,

                “Content-Type”,

                “Origin”,

                “Range”

            ]

        }

    ]

  7. Click Save changes.

That’s it! Cross-origin resource sharing (CORS) is enabled for your S3 bucket. You can access the s3 files from other origins. You can also update AllowedOrigins in JSON content to limit access to specific domains only.