Cross-Origin Resource Sharing (CORS) im Object Storage
Zuletzt aktualisiert am
Konfigurieren Sie Cross-Origin Resource Sharing (CORS) für einen Bucket, um seine Objekte für Webanwendungen zugänglich zu machen, die in einer anderen Domäne gehostet werden. CORS ist ein Browser-Sicherheitsmechanismus, der den Zugriff auf Ressourcen anderer Herkunft kontrolliert.
Wenn Sie beispielsweise Bilder in einem Bucket mit dem Namen my-example-bucket haben und diese auf einer Website unter https://example.com anzeigen möchten, fügen Sie my-example-bucket eine CORS-Regel hinzu, die den Zugriff von https://example.com erlaubt.
Voraussetzungen
Abschnitt betitelt „Voraussetzungen“- Object Storage aktiviert und Anmeldeinformationen konfiguriert: Object Storage aktivieren
- AWS CLI für STACKIT Object Storage installiert und konfiguriert: Richten Sie die AWS CLI ein
CORS-Regelstruktur
Abschnitt betitelt „CORS-Regelstruktur“Eine CORS-Regel kann als XML oder JSON definiert werden. Jede Regel besteht aus:
| Element | Beschreibung |
|---|---|
| AUSWEIS | Identifiziert die Regel. Pro Bucket können mehrere Regeln definiert werden. |
| AllowedOrigin | Die Herkunft, von der aus der Zugriff erlaubt wird. Verwenden Sie *, um alle Herkünfte zu erlauben. |
| AllowedMethod | Für die Objekte zulässige HTTP-Methoden: GET, PUT, DELETE oder HEAD. |
| AllowedHeader | Header, die in der Anfrage erlaubt sind. Verwenden Sie *, um alle Header zu erlauben. |
| ExposeHeader | Antwortheader, die der Anwendung zurückgegeben werden. |
| MaxAgeSeconds | Dauer in Sekunden, die die Preflight-Antwort zwischengespeichert werden kann. |
CORS-Regeln festlegen
Abschnitt betitelt „CORS-Regeln festlegen“Erstellen Sie eine CORS-Konfigurationsdatei im JSON-Format. Das folgende Beispiel erlaubt GET- und HEAD-Zugriff von my-app.com:
{ "CORSRules": [ { "ID": "Allow Bucket for my-app.com", "AllowedOrigins": [ "https://www.my-app.com", "http://www.my-app.com", "https://my-app.com", "http://my-app.com" ], "AllowedMethods": ["GET", "HEAD"], "AllowedHeaders": ["Content-*", "Host"], "ExposeHeaders": ["ETag"], "MaxAgeSeconds": 86400 } ]}Wenden Sie die Konfigurationsdatei auf Ihren Bucket an:
aws s3api put-bucket-cors \ --bucket my-example-bucket \ --cors-configuration file://cors-rules.json \ --endpoint-url https://object.storage.eu01.onstackit.cloudCORS-Regeln abrufen
Abschnitt betitelt „CORS-Regeln abrufen“Rufen Sie die aktuelle CORS-Konfiguration für einen Bucket ab:
aws s3api get-bucket-cors \ --bucket my-example-bucket \ --endpoint-url https://object.storage.eu01.onstackit.cloudCORS-Regeln löschen
Abschnitt betitelt „CORS-Regeln löschen“So entfernen Sie alle CORS-Regeln aus einem Bucket:
aws s3api delete-bucket-cors \ --bucket my-example-bucket \ --endpoint-url https://object.storage.eu01.onstackit.cloud