Tighten up S3 CORS configuration

This commit is contained in:
Filip Sodić
2025-02-25 16:34:03 +01:00
parent dd334e28c6
commit dbca3a20c1
3 changed files with 33 additions and 26 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 81 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 728 KiB

After

Width:  |  Height:  |  Size: 60 KiB

View File

@@ -11,6 +11,7 @@ import defaultSettings from '@assets/file-uploads/default-settings.png';
import newBucket from '@assets/file-uploads/new-bucket.png'; import newBucket from '@assets/file-uploads/new-bucket.png';
import permissions from '@assets/file-uploads/permissions.png'; import permissions from '@assets/file-uploads/permissions.png';
import cors from '@assets/file-uploads/cors.png'; import cors from '@assets/file-uploads/cors.png';
import corsExample from '@assets/file-uploads/cors-example.png';
import username from '@assets/file-uploads/username.png'; import username from '@assets/file-uploads/username.png';
import keys from '@assets/file-uploads/keys.png'; import keys from '@assets/file-uploads/keys.png';
@@ -78,8 +79,11 @@ Now we need to change some permissions on the bucket to allow for file uploads f
<Image src={permissions} alt="permissions" loading="lazy" /> <Image src={permissions} alt="permissions" loading="lazy" />
3. Scroll down to the `Cross-origin resource sharing (CORS)` section and click `Edit` 3. Scroll down to the `Cross-origin resource sharing (CORS)` section and click `Edit`
<Image src={cors} alt="cors" loading="lazy" /> <Image src={cors} alt="cors" loading="lazy" />
5. Paste the following CORS configuration and click `Save changes`: 5. Insert the correct CORS configuration and click `Save changes`. You can
```json copy-paste most of the config below, but **you must edit the
`AllowedOrigins` field** to fit your app. Include `http://localhost:3000` for
local development, and `https://<your domain>` for production.
```json {11,12}
[ [
{ {
"AllowedHeaders": [ "AllowedHeaders": [
@@ -90,12 +94,15 @@ Now we need to change some permissions on the bucket to allow for file uploads f
"GET" "GET"
], ],
"AllowedOrigins": [ "AllowedOrigins": [
"*" "http://localhost:3000",
"https://<your-domain>"
], ],
"ExposeHeaders": [] "ExposeHeaders": []
} }
] ]
``` ```
As an example, here are the CORS permissions for this site - https://opensaas.sh:
<Image src={corsExample} alt="cors-example" loading="lazy" />
### Get your AWS S3 credentials ### Get your AWS S3 credentials