cors - Get or set a CORS configuration for one or more buckets

Synopsis

gsutil cors set <cors-json-file> gs://<bucket_name>...
gsutil cors get gs://<bucket_name>

Description

Gets or sets the Cross-Origin Resource Sharing (CORS) configuration on one or more buckets. This command is supported for buckets only, not objects. An example CORS JSON file looks like the following:

[
  {
    "origin": ["http://origin1.example.com"],
    "responseHeader": ["Content-Type"],
    "method": ["GET"],
    "maxAgeSeconds": 3600
  }
]

The above CORS configuration explicitly allows cross-origin GET requests from http://origin1.example.com and may include the Content-Type response header. The preflight request may be cached for 1 hour.

Note that requests to the authenticated browser download endpoint storage.cloud.google.com do not allow CORS requests. For more information about supported endpoints for CORS, see Cloud Storage CORS support.

The following (empty) CORS JSON file removes any CORS configuration for a bucket:

[]

The cors command has two sub-commands:

Get

Gets the CORS configuration for a single bucket. The output from cors get can be redirected into a file, edited and then updated using cors set.

Set

Sets the CORS configuration for one or more buckets. The cors-json-file specified on the command line should be a path to a local file containing a JSON-formatted CORS configuration, such as the example described above.

For more info about CORS generally, see https://www.w3.org/TR/cors/. For more info about CORS in Cloud Storage, see the CORS concept page.