

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.

# Elemente einer CORS-Konfiguration
<a name="ManageCorsUsing"></a>

Um Ihren Bucket so zu konfigurieren, dass er ursprungsübergreifende Anfragen zulässt, erstellen Sie eine CORS-Konfiguration. Die CORS-Konfiguration ist ein Dokument mit Elementen, die die Ursprünge, die auf Ihren Bucket zugreifen dürfen, die Vorgänge (HTTP-Methoden), die die einzelnen Ursprünge unterstützen, sowie weitere operationsspezifische Informationen identifizieren. Sie können der Konfiguration bis zu 100 Regeln hinzufügen. Sie können dem Bucket die CORS-Konfiguration als `cors`-Subressource hinzufügen.

Wenn Sie CORS in der S3-Konsole konfigurieren, müssen Sie JSON verwenden, um eine CORS-Konfiguration zu erstellen. Die neue S3-Konsole unterstützt nur JSON CORS-Konfigurationen. 

Weitere Informationen über die CORS-Konfiguration und die darin enthaltenen Elemente finden Sie in den folgenden Themen. Anweisungen zum Hinzufügen einer CORS-Konfiguration finden Sie unter [Cross-Origin Resource Sharing (CORS) konfigurieren](enabling-cors-examples.md).

**Wichtig**  
In der S3-Konsole muss die CORS-Konfiguration JSON sein. 

**Topics**
+ [

## `AllowedMethods`-Element
](#cors-allowed-methods)
+ [

## `AllowedOrigins`-Element
](#cors-allowed-origin)
+ [

## `AllowedHeaders`-Element
](#cors-allowed-headers)
+ [

## `ExposeHeaders`-Element
](#cors-expose-headers)
+ [

## `MaxAgeSeconds`-Element
](#cors-max-age)
+ [

## Beispiele für CORS-Konfigurationen
](#cors-example-1)

## `AllowedMethods`-Element
<a name="cors-allowed-methods"></a>

In der CORS-Konfiguration können Sie die folgenden Werte für das `AllowedMethods`-Element angeben.
+ GET
+ PUT
+ POST
+ DELETE
+ HEAD

## `AllowedOrigins`-Element
<a name="cors-allowed-origin"></a>

Im `AllowedOrigins`-Element geben Sie die Ursprünge an, über die Sie domänenübergreifende Anfragen erlauben möchten, z. B. ` http://www.example.com`. Die Ursprungszeichenfolge darf nur ein `*`-Platzhalterzeichen enthalten, wie beispielsweise `http://*.example.com`. Optional können Sie `*` als Ursprung angeben, sodass alle Ursprünge ursprungsübergreifende Anfragen senden dürfen. Sie können auch `https` angeben, um nur sichere Ursprünge zuzulassen.

## `AllowedHeaders`-Element
<a name="cors-allowed-headers"></a>

Das `AllowedHeaders`-Element gibt an, welche Header in einer Preflight-Anfrage durch den `Access-Control-Request-Headers`-Header erlaubt sind. Jeder Header-Name im `Access-Control-Request-Headers`-Header muss mit einem entsprechenden Eintrag in dem Element übereinstimmen. Amazon S3 sendet nur die zulässigen angeforderten Header in einer Antwort. Eine Liste mit Beispielen für Header, die in Anfragen an Amazon S3 verwendet werden können, finden Sie unter [Häufig verwendete Anforderungsheader](https://docs.aws.amazon.com/AmazonS3/latest/API/RESTCommonRequestHeaders.html) im *API-Referenzhandbuch zum Amazon Simple Storage Service*.

Jede AllowedHeaders Zeichenfolge in Ihrer Konfiguration kann höchstens ein Platzhalterzeichen (\$1) enthalten. Beispielsweise aktiviert `<AllowedHeader>x-amz-*</AllowedHeader>` alle für Amazon spezifischen Header.

## `ExposeHeaders`-Element
<a name="cors-expose-headers"></a>

Jedes `ExposeHeader` Element identifiziert einen Header in der Antwort, auf den Kunden von ihren Anwendungen (z. B. von einem JavaScript `XMLHttpRequest` Objekt) aus zugreifen können sollen. Eine Liste der gängigen Amazon-S3-Antwortheader finden Sie unter [Häufig verwendete Anforderungsheader](https://docs.aws.amazon.com/AmazonS3/latest/API/RESTCommonResponseHeaders.html) im *API-Referenzhandbuch zum Amazon Simple Storage Service*.

## `MaxAgeSeconds`-Element
<a name="cors-max-age"></a>

Das `MaxAgeSeconds`-Element gibt die Zeit in Sekunden an, wie lange Ihr Browser die Antwort auf eine Preflight-Anfrage zwischenspeichern kann, wie nach der Ressource, der HTTP-Methode und dem Ursprung identifiziert.

## Beispiele für CORS-Konfigurationen
<a name="cors-example-1"></a>

Statt über einen Amazon-S3-Website-Endpunkt auf eine Website zuzugreifen, können Sie Ihre eigen Domäne verwenden, wie beispielsweise `example1.com`, um Ihren Inhalt bereitzustellen. Weitere Informationen zur Verwendung Ihrer eigenen Domäne finden Sie unter [Tutorial: Konfigurieren einer statischen Website mithilfe einer benutzerdefinierten bei Route 53 registrierten Domäne](website-hosting-custom-domain-walkthrough.md). 

Die folgende Beispielkonfiguration für CORS umfasst drei Regeln, die als `CORSRule`-Elemente angegeben sind:
+ Die erste Regel gestattet ursprungsübergreifende PUT-, POST- und DELETE-Anfragen vom Ursprung `http://www.example1.com`. Die Regel gestattet auch alle Header in einer Preflight-OPTIONS-Anfrage durch den `Access-Control-Request-Headers`-Header. Als Antwort auf Preflight-OPTIONS-Anfragen gibt Amazon S3 angeforderte Header zurück.
+ Die zweite Regel gestattet dieselben ursprungsübergreifenden Anfragen wie die erste Regel, aber sie bezieht sich auf einen anderen Ursprung, `http://www.example2.com`. 
+ Die dritte Regel gestattet ursprungsübergreifende GET-Anfragen von allen Ursprüngen. Das Platzhalterzeichen `*` bezieht sich auf alle Ursprünge. 

------
#### [ JSON ]

```
[
    {
        "AllowedHeaders": [
            "*"
        ],
        "AllowedMethods": [
            "PUT",
            "POST",
            "DELETE"
        ],
        "AllowedOrigins": [
            "http://www.example1.com"
        ],
        "ExposeHeaders": []
    },
    {
        "AllowedHeaders": [
            "*"
        ],
        "AllowedMethods": [
            "PUT",
            "POST",
            "DELETE"
        ],
        "AllowedOrigins": [
            "http://www.example2.com"
        ],
        "ExposeHeaders": []
    },
    {
        "AllowedHeaders": [],
        "AllowedMethods": [
            "GET"
        ],
        "AllowedOrigins": [
            "*"
        ],
        "ExposeHeaders": []
    }
]
```

------
#### [ XML ]

```
<CORSConfiguration>
 <CORSRule>
   <AllowedOrigin>http://www.example1.com</AllowedOrigin>

   <AllowedMethod>PUT</AllowedMethod>
   <AllowedMethod>POST</AllowedMethod>
   <AllowedMethod>DELETE</AllowedMethod>

   <AllowedHeader>*</AllowedHeader>
 </CORSRule>
 <CORSRule>
   <AllowedOrigin>http://www.example2.com</AllowedOrigin>

   <AllowedMethod>PUT</AllowedMethod>
   <AllowedMethod>POST</AllowedMethod>
   <AllowedMethod>DELETE</AllowedMethod>

   <AllowedHeader>*</AllowedHeader>
 </CORSRule>
 <CORSRule>
   <AllowedOrigin>*</AllowedOrigin>
   <AllowedMethod>GET</AllowedMethod>
 </CORSRule>
</CORSConfiguration>
```

------

Die CORS-Konfiguration unterstützt auch optionale Konfigurationsparameter, wie in der folgenden CORS-Konfiguration gezeigt. In diesem Beispiel gestattet die folgende CORS-Konfiguration ursprungsübergreifende PUT-, POST- und DELETE-Anfragen vom Ursprung `http://www.example.com`.

------
#### [ JSON ]

```
[
    {
        "AllowedHeaders": [
            "*"
        ],
        "AllowedMethods": [
            "PUT",
            "POST",
            "DELETE"
        ],
        "AllowedOrigins": [
            "http://www.example.com"
        ],
        "ExposeHeaders": [
            "x-amz-server-side-encryption",
            "x-amz-request-id",
            "x-amz-id-2"
        ],
        "MaxAgeSeconds": 3000
    }
]
```

------
#### [ XML ]

```
<CORSConfiguration>
 <CORSRule>
   <AllowedOrigin>http://www.example.com</AllowedOrigin>
   <AllowedMethod>PUT</AllowedMethod>
   <AllowedMethod>POST</AllowedMethod>
   <AllowedMethod>DELETE</AllowedMethod>
   <AllowedHeader>*</AllowedHeader>
  <MaxAgeSeconds>3000</MaxAgeSeconds>
  <ExposeHeader>x-amz-server-side-encryption</ExposeHeader>
  <ExposeHeader>x-amz-request-id</ExposeHeader>
  <ExposeHeader>x-amz-id-2</ExposeHeader>
 </CORSRule>
</CORSConfiguration>
```

------

Das `CORSRule`-Element in der obigen Konfiguration beinhaltet die folgenden optionalen Elemente:
+ `MaxAgeSeconds` – Gibt den Zeitraum in Sekunden an (in diesem Beispiel 3000), für den der Browser eine Amazon-S3-Antwort auf eine Preflight-OPTIONS-Anfrage für die angegebene Ressource zwischenspeichert. Durch die Zwischenspeicherung der Antwort muss der Browser keine Preflight-Anfragen an Amazon S3 senden, wenn die ursprüngliche Anfrage wiederholt werden soll. 
+ `ExposeHeaders`— Identifiziert die Antwort-Header (in diesem Beispiel, `x-amz-server-side-encryption``x-amz-request-id`, und`x-amz-id-2`), auf die Kunden von ihren Anwendungen aus zugreifen können (z. B. von einem JavaScript `XMLHttpRequest` Objekt aus).