

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.

# Hinzufügen von CloudFront-Anforderungsheadern
<a name="adding-cloudfront-headers"></a>

Sie können CloudFront so konfigurieren, dass den Anforderungen, die CloudFront von Viewern erhält und an Ihren Ursprung oder Ihre [Edge-Funktion](edge-functions.md) weiterleitet, bestimmte HTTP-Header hinzugefügt werden. Die Werte dieser HTTP-Header basieren auf den Eigenschaften des Viewers oder der Viewer-Anforderung. Die Header stellen Informationen über den Gerätetyp, die IP-Adresse, den geografischen Standort, das Anforderungsprotokoll (HTTP oder HTTPS), die HTTP-Version, die TLS-Verbindungsdetails, den [JA3-Fingerprint](https://github.com/salesforce/ja3) und den JA4-Fingerprint des Viewers bereit. Sie können das Cacheverhalten Ihrer Distribution auch so konfigurieren, dass WebSocket-Header weitergeleitet werden. Weitere Informationen finden Sie unter [WebSockets Mit CloudFront Distributionen verwenden](distribution-working-with.websockets.md).

Mit diesen Headern kann Ihr Ursprung oder Ihre Edge-Funktion Informationen über den Viewer abrufen, sodass Sie keinen eigenen Code schreiben müssen, um diese Informationen zu ermitteln. Wenn der Ursprung basierend auf den Informationen in diesen Headern unterschiedliche Antworten zurückgibt, können Sie diese in den *Cache-Schlüssel* einfügen, damit CloudFront die Antworten getrennt zwischenspeichert. Beispielsweise könnte der Ursprung basierend auf dem Land, in dem sich der Viewer befindet, mit Inhalten in einer spezifischen Sprache antworten oder er könnte mit Inhalten antworten, die auf einen spezifischen Gerätetyp zugeschnitten sind. Der Ursprung könnte diese Header auch in Protokolldateien schreiben, mit denen Sie Informationen über die Standorte und Gerätetypen der Viewer und vieles mehr ermitteln können.

Um diese Header in den Cache-Schlüssel einzufügen, verwenden Sie eine *Cache-Richtlinie*. Weitere Informationen finden Sie unter [Steuern des Cache-Schlüssels mit einer Richtlinie](controlling-the-cache-key.md) und [Grundlegendes zum Cache-Schlüssel](understanding-the-cache-key.md).

Wenn Sie Header am Ursprung empfangen, diese aber nicht in den Cache-Schlüssel einschließen möchten, verwenden Sie eine *Ursprungsanforderungsrichtlinie*. Weitere Informationen finden Sie unter [Steuern von Ursprungsanforderungen anhand einer Richtlinie](controlling-origin-requests.md).

**Topics**
+ [Gerätetyp-Header](#cloudfront-headers-device-type)
+ [Viewer-Standort-Header](#cloudfront-headers-viewer-location)
+ [Header zur Bestimmung der Header-Struktur des Viewers](#cloudfront-headers-viewer-headers)
+ [TLS-bezogene Header](#tls-related-versions)
+ [Andere CloudFront-Header](#cloudfront-headers-other)

## Gerätetyp-Header
<a name="cloudfront-headers-device-type"></a>

Mit den folgenden Headern können Sie den Gerätetyp des Viewers ermitteln. Basierend auf dem Wert des Headers `User-Agent` legt CloudFront den Wert dieser Header auf `true` oder `false` fest. Wenn ein Gerät in mehr als eine Kategorie fällt, können mehrere Werte sein `true`. Beispielsweise setzt CloudFront bei einigen Tablet-Geräten `CloudFront-Is-Mobile-Viewer` und `CloudFront-Is-Tablet-Viewer` auf `true`.
+ `CloudFront-Is-Android-Viewer` – Wird auf `true` festgelegt, wenn CloudFront feststellt, dass es sich bei dem Viewer um ein Gerät mit Android-Betriebssystem handelt.
+ `CloudFront-Is-Desktop-Viewer` – Wird auf `true` festgelegt, wenn CloudFront feststellt, dass es sich bei dem Viewer um ein Desktopgerät handelt.
+ `CloudFront-Is-IOS-Viewer` – Wird auf `true` festgelegt, wenn CloudFront feststellt, dass es sich bei dem Viewer um ein Gerät mit einem Apple-Betriebssystem, wie ein iPhone, einen iPod touch und andere iPad-Geräte, handelt.
+ `CloudFront-Is-Mobile-Viewer` – Wird auf `true` festgelegt, wenn CloudFront feststellt, dass es sich bei dem Viewer um ein Mobilgerät handelt.
+ `CloudFront-Is-SmartTV-Viewer` – Wird auf `true` festgelegt, wenn CloudFront feststellt, dass es sich bei dem Viewer um ein Smart-TV-Gerät handelt.
+ `CloudFront-Is-Tablet-Viewer` – Wird auf `true` festgelegt, wenn CloudFront feststellt, dass es sich bei dem Viewer um ein Tablet handelt.

## Viewer-Standort-Header
<a name="cloudfront-headers-viewer-location"></a>

Mit den folgenden Headern können Sie den Standort des Viewers ermitteln. CloudFront bestimmt die Werte für diese Header basierend auf der IP-Adresse des Viewers. Andere Zeichen als ASCII-Zeichen in den Werten dieser Header kodiert CloudFront mit Prozentzeichen gemäß [Abschnitt 1.2 von RFC 3986](https://tools.ietf.org/html/rfc3986#section-2.1).
+ `CloudFront-Viewer-Address` – Enthält die IP-Adresse des Viewers und den Quell-Port der Anforderung. Der Header-Wert `198.51.100.10:46532` bedeutet beispielsweise, dass die IP-Adresse des Viewers 198.51.100.10 lautet und der Quell-Port der Anforderung 46532 ist.
+ `CloudFront-Viewer-ASN` – Enthält die autonome Systemnummer (ASN) des Viewers.
**Anmerkung**  
`CloudFront-Viewer-Address` und `CloudFront-Viewer-ASN` können in einer Ursprungsanforderungsrichtlinie, aber nicht in einer Cache-Richtlinie hinzugefügt werden.
+ `CloudFront-Viewer-Country` – Enthält den zweistelligen Ländercode für das Land des Viewers. Die Liste der Ländercodes finden Sie unter [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2).
+ `CloudFront-Viewer-City` – Enthält den Namen der Stadt des Viewers.

Wenn Sie die folgenden Header hinzufügen, wendet CloudFront sie auf alle Anforderungen an, *mit Ausnahme* derjenigen, die ihren Ursprung im AWS-Netzwerk haben:
+ `CloudFront-Viewer-Country-Name` – Enthält den Namen des Landes des Viewers.
+ `CloudFront-Viewer-Country-Region` – Enthält einen Code (bis zu drei Zeichen), der die Region des Viewers darstellt. Die Region ist die Unterteilung der ersten Ebene (die breiteste oder am wenigsten spezifische) des Codes [ISO 3166-2](https://en.wikipedia.org/wiki/ISO_3166-2).
+ `CloudFront-Viewer-Country-Region-Name` – Enthält den Namen der Region des Viewers. Die Region ist die Unterteilung der ersten Ebene (die breiteste oder am wenigsten spezifische) des Codes [ISO 3166-2](https://en.wikipedia.org/wiki/ISO_3166-2).
+ `CloudFront-Viewer-Latitude` – Enthält den ungefähren Breitengrad des Viewers.
+ `CloudFront-Viewer-Longitude` – Enthält den ungefähren Längengrad des Viewers.
+ `CloudFront-Viewer-Metro-Code` – Enthält den Metro-Code des Viewers. Dieser wird nur verwendet, wenn sich der Viewer in den Vereinigten Staaten befindet.
+ `CloudFront-Viewer-Postal-Code` – Enthält die Postleitzahl des Viewers.
+ `CloudFront-Viewer-Time-Zone` Enthält die Zeitzone des Viewers im [IANA-Zeitzonen-Datenbankformat](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones) (z. B. `America/Los_Angeles`).

**Anmerkung**  
`CloudFront-Viewer-City`, `CloudFront-Viewer-Metro-Code` und `CloudFront-Viewer-Postal-Code` sind möglicherweise nicht für jede IP-Adresse verfügbar. Einige IP-Adressen können nicht mit ausreichender Genauigkeit geolokalisiert werden, um diese Informationen zu erhalten.

## Header zur Bestimmung der Header-Struktur des Viewers
<a name="cloudfront-headers-viewer-headers"></a>

Sie können jetzt die folgenden Header hinzufügen, um den Viewer leichter anhand der gesendeten Header identifizieren zu können. So können beispielsweise verschiedene Browser HTTP-Header in einer bestimmten Reihenfolge senden. Wenn der im `User-Agent`-Header angegebene Browser nicht mit der erwarteten Header-Reihenfolge dieses Browsers übereinstimmt, können Sie die Anforderung ablehnen. Auch wenn der `CloudFront-Viewer-Header-Count`-Wert nicht mit der Anzahl der Header in `CloudFront-Viewer-Header-Order` übereinstimmt, können Sie die Anforderung ablehnen.
+ `CloudFront-Viewer-Header-Order` – Enthält die Header-Namen des Viewers in der angeforderten Reihenfolge, getrennt durch einen Doppelpunkt. Beispiel: `CloudFront-Viewer-Header-Order: Host:User-Agent:Accept:Accept-Encoding`. Header, die das Zeichenlimit von 7 680 überschreiten, werden abgeschnitten.
+ `CloudFront-Viewer-Header-Count` – Enthält die Gesamtzahl der Header des Viewers.

## TLS-bezogene Header
<a name="tls-related-versions"></a>

Sie können die folgenden Header hinzufügen, um den JA3-Fingerprint, den JA4-Fingerprint und die TLS-Verbindungsdetails des Viewers zu ermitteln:
+ `CloudFront-Viewer-JA3-Fingerprint` – Enthält den [JA3-Fingerabdruck](https://github.com/salesforce/ja3) des Viewers. Anhand des JA3-Fingerabdrucks können Sie feststellen, ob die Anforderung von einem bekannten Client stammt, ob es sich um Malware oder einen bösartigen Bot oder um eine erwartete (in der Zulassungsliste aufgeführte) Anwendung handelt. 
+ `CloudFront-Viewer-JA4-Fingerprint` – Enthält den JA4-Fingerabdruck des Viewers. Ähnlich wie beim JA3-Fingerprint können Sie anhand des [JA4-Fingerprints](https://github.com/FoxIO-LLC/ja4) feststellen, ob die Anforderung von einem bekannten Client stammt, ob es sich um Malware oder einen bösartigen Bot oder um eine erwartete (in der Zulassungsliste aufgeführte) Anwendung handelt. Sie können den Fingerprint verwenden, um eine Datenbank mit bekannten guten und schlechten Akteuren zu erstellen, die Sie bei der Überprüfung von HTTP-Anforderungen verwenden können. Anschließend können Sie den Header-Wert auf Ihren Anwendungs-Webservern oder in [Lambda@Edge](lambda-at-the-edge.md) und [CloudFront Functions](cloudfront-functions.md) überprüfen, um den Header-Wert mit einer Liste bekannter Malware-Fingerprints zu vergleichen, um böswillige Clients zu blockieren.
+ `CloudFront-Viewer-TLS` – Enthält die SSL/TLS-Version, die Verschlüsselung und die Informationen über den SSL/TTS-Handshake, die für die Verbindung zwischen Viewer und CloudFront verwendet wurden. Der Header-Wert weist das folgende Format auf:

  ```
  SSL/TLS_version:cipher:handshake_information
  ```

  Der `handshake_information`-Header kann einen der folgenden Werte enthalten:
  + `fullHandshake` – Für die SSL/TLS-Sitzung wurde ein vollständiger Handshake durchgeführt.
  + `sessionResumed` – Eine vorherige SSL/TLS-Sitzung wurde wieder aufgenommen.
  + `connectionReused` – Eine frühere SSL/TLS-Verbindung wurde wiederverwendet.

  Im Folgenden finden Sie einige Beispielwerte für diesen Header:

  ```
  TLSv1.3:TLS_AES_128_GCM_SHA256:sessionResumed
  ```

  ```
  TLSv1.2:ECDHE-ECDSA-AES128-GCM-SHA256:connectionReused
  ```

  ```
  TLSv1.1:ECDHE-RSA-AES128-SHA256:fullHandshake
  ```

  ```
  TLSv1:ECDHE-RSA-AES256-SHA:fullHandshake
  ```

  Eine vollständige Liste der möglichen SSL/TLS-Versionen und Verschlüsselungen, die in diesem Header-Wert enthalten sein können, finden Sie unter [Unterstützte Protokolle und Chiffren zwischen Zuschauern und CloudFront](secure-connections-supported-viewer-protocols-ciphers.md).

**Hinweise**  
Die JA3- und JA4-Fingerprints werden aus dem SSL/TLS-`Client Hello`-Paket abgeleitet. Sie sind nur für HTTPS-Anforderungen vorhanden.
Dese TLS-bezogenen Header können Sie zu einer [Ursprungsanforderungsrichtlinie](controlling-origin-requests.md) hinzufügen, aber nicht zu einer [Cache-Richtlinie.](controlling-the-cache-key.md)

## Andere CloudFront-Header
<a name="cloudfront-headers-other"></a>

Sie können die folgenden Header hinzufügen, um den ursprünglichen Anforderungs-URI, die Abfragezeichenfolgeparameter und Werte der ursprünglichen Anforderung, das Protokoll und die Version zu ermitteln:
+ `CloudFront-Error-Uri` – enthält den ursprünglichen Anforderung-URI, der vom Viewer empfangen wurde.
+ `CloudFront-Error-Args` – enthält die Abfragezeichenfolgeparameter und Werte der ursprünglichen Anforderung.
+ `CloudFront-Forwarded-Proto` – Enthält das Protokoll der Anforderung des Viewers (HTTP oder HTTPS).
+ `CloudFront-Viewer-Http-Version` – Enthält die HTTP-Version der Anforderung des Viewers.