Verwendung von ursprungsübergreifendem Ressourcenaustausch () CORS - Amazon Simple Storage Service

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Verwendung von ursprungsübergreifendem Ressourcenaustausch () CORS

Cross-Origin Resource Sharing (CORS) definiert eine Möglichkeit, wie Client-Webanwendungen, die in eine Domain geladen sind, mit Ressourcen in einer anderen Domain interagieren können. Mit CORS Support können Sie umfangreiche clientseitige Webanwendungen mit Amazon S3 erstellen und selektiv den ursprungsübergreifenden Zugriff auf Ihre Amazon S3 S3-Ressourcen zulassen.

Dieser Abschnitt bietet einen Überblick über. CORS In den Unterthemen wird beschrieben, wie Sie die Aktivierung CORS mithilfe der Amazon S3-Konsole oder programmgesteuert mithilfe von Amazon S3 REST API und dem durchführen können. AWS SDKs

Cross-Origin Resource Sharing: Szenarien in Anwendungsfällen

Im Folgenden finden Sie Beispielszenarien für die Verwendung von. CORS

Szenario 1

Szenario 1: Angenommen, Sie hosten eine Website in einem Amazon-S3-Bucket mit dem Namen website, wie in Hosten einer statischen Website mit Amazon S3 beschrieben. Ihre Benutzer laden den Website-Endpunkt:

http://website.s3-website.us-east-1.amazonaws.com

Jetzt möchten Sie JavaScript auf den Webseiten, die in diesem Bucket gespeichert sind, verwenden, um authentifizierte PUT Anfragen GET und Anfragen für denselben Bucket stellen zu können, indem Sie den Amazon S3 API S3-Endpunkt für den Bucket verwenden. website.s3.us-east-1.amazonaws.com Ein Browser würde diese Anfragen normalerweise blockieren, aber mit können CORS Sie Ihren Bucket so konfigurieren, dass Anfragen JavaScript aus verschiedenen Quellen explizit aktiviert werden. website.s3-website.us-east-1.amazonaws.com

Szenario 2

Angenommen, Sie möchten eine Web-Schriftart aus Ihrem S3-Bucket hosten. Auch hier benötigen Browser eine CORS Prüfung (auch Preflight-Prüfung genannt), um Webfonts laden zu können. Sie würden den Bucket, der die Web-Schriftart hostet, deshalb so konfigurieren, dass jeder Ursprung diese Anfragen machen kann.

Wie bewertet Amazon S3 die CORS Konfiguration eines Buckets?

Wenn Amazon S3 eine Preflight-Anfrage von einem Browser empfängt, bewertet es die CORS Konfiguration für den Bucket und verwendet die erste CORSRule Regel, die der eingehenden Browseranfrage entspricht, um eine ursprungsübergreifende Anfrage zu aktivieren. Für die Übereinstimmung mit einer Regel müssen die folgenden Bedingungen erfüllt sei:

  • Der Origin Header in einer CORS Anfrage an Ihren Bucket muss mit den Ursprüngen im AllowedOrigins Element in Ihrer Konfiguration übereinstimmen. CORS

  • Die HTTP Methoden, die Access-Control-Request-Method in einer CORS Anfrage an Ihren Bucket angegeben sind, müssen mit der oder den Methoden übereinstimmen, die in dem AllowedMethods Element in Ihrer CORS Konfiguration aufgeführt sind.

  • Die im Header einer Pre-Flight-Anfrage aufgeführten Access-Control-Request-Headers Header müssen mit den Headern im AllowedHeaders Element in Ihrer Konfiguration übereinstimmen. CORS

Anmerkung

Die Richtlinien ACLs und gelten weiterhin, wenn Sie sie in Ihrem Bucket aktivierenCORS.

So unterstützt Object Lambda Access Point CORS

Wenn S3 Object Lambda eine Anforderung von einem Browser empfängt oder die Anforderung einen Origin-Header enthält, fügt S3 Object Lambda immer das Header-Feld “AllowedOrigins":"*" hinzu.

Weitere Informationen zur Verwendung CORS finden Sie in den folgenden Themen.