Hinzufügen von CloudFront Anforderungs-Headern - Amazon CloudFront

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 Anforderungs-Headern

Sie können so konfigurieren CloudFront , dass den Anforderungen, die von Betrachtern CloudFront empfängt und an Ihren Ursprung oder Ihre Edge-Funktion 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 und den JA3-Fingerprint des Viewers bereit.

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 Ihr Ursprung basierend auf den Informationen in diesen Headern unterschiedliche Antworten zurückgibt, können Sie sie in den Cache-Schlüssel aufnehmen, sodass die Antworten separat CloudFront 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 erhalten Sie unter Kontrollieren des Cache-Schlüssels und Grundlegendes zum Cache-Schlüssel.

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.

Header zur Ermittlung des Gerätetyps des Viewers

Mit den folgenden Headern können Sie den Gerätetyp des Viewers ermitteln. Basierend auf dem Wert des User-Agent Headers CloudFront setzt den Wert dieser Header auf true oder false. Wenn ein Gerät in mehr als eine Kategorie fällt, können mehrere Werte true sein. Bei einigen Tablet-Geräten CloudFront setzt beispielsweise sowohl als auch CloudFront-Is-Mobile-Viewer CloudFront-Is-Tablet-Viewer auf true.

  • CloudFront-Is-Android-Viewer – Wird auf gesetzt, true wenn CloudFront feststellt, dass es sich bei dem Viewer um ein Gerät mit dem Android-Betriebssystem handelt.

  • CloudFront-Is-Desktop-Viewer – Wird auf gesetzt, true wenn CloudFront feststellt, dass es sich bei dem Viewer um ein Desktop-Gerät handelt.

  • CloudFront-Is-IOS-Viewer – Wird auf gesetzt, true wenn CloudFront feststellt, dass es sich bei dem Viewer um ein Gerät mit einem Apple-Betriebssystem handelt, z. B. iPhone , iPod touch und einige iPad-Geräte.

  • CloudFront-Is-Mobile-Viewer – Wird auf gesetzt, true wenn CloudFront feststellt, dass es sich bei dem Viewer um ein Mobilgerät handelt.

  • CloudFront-Is-SmartTV-Viewer – Wird auf gesetzt, true wenn CloudFront feststellt, dass es sich bei dem Viewer um ein Smart TV handelt.

  • CloudFront-Is-Tablet-Viewer – Wird auf gesetzt, true wenn CloudFront feststellt, dass es sich bei dem Viewer um ein Tablet handelt.

Header zur Ermittlung des Standorts des Viewers

Sie können die folgenden Header hinzufügen, um den Standort des Viewers zu bestimmen. CloudFront bestimmt die Werte für diese Header basierend auf der IP-Adresse des Viewers. Bei Nicht-ASCII-Zeichen in den Werten dieser Header kodiert CloudFront in Prozent das Zeichen gemäß Abschnitt 1.2 von RFC 3986.

  • 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.

Wenn Sie die folgenden Header hinzufügen, CloudFront wendet sie auf alle Anforderungen an, mit Ausnahme derjenigen, die aus dem AWS Netzwerk stammen:

  • CloudFront-Viewer-City – Enthält den Namen der Stadt des Viewers.

  • 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.

  • 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.

  • 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 (z. B. America/Los_Angeles).

Header zur Bestimmung der Header-Struktur des Viewers

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. Zum 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.

Andere CloudFront Header

Sie können die folgenden Header hinzufügen, um das Protokoll, die Version, den JA3-Fingerabdruck und die TLS-Verbindungsdetails des Viewers zu ermitteln:

  • 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.

  • CloudFront-Viewer-JA3-Fingerprint – Enthält den JA3-Fingerabdruck 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. Dieser Header basiert auf dem SSL/TLS-Paket Client Hello des Viewers und ist nur für HTTPS-Anforderungen vorhanden.

    Anmerkung

    Sie können CloudFront-Viewer-JA3-Fingerprint in einer Ursprungsanforderungsrichtlinie, aber nicht in einer Cache-Richtlinie hinzufügen.

  • CloudFront-Viewer-TLS – Enthält die SSL/TLS-Version, die Verschlüsselung und Informationen über den SSL/TLS-Handshake, der für die Verbindung zwischen Viewer und verwendet wurde CloudFront. 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 Verschlüsselungsverfahren zwischen Viewern und CloudFront.

    Anmerkung

    Sie können CloudFront-Viewer-TLS in einer Ursprungsanforderungsrichtlinie, aber nicht in einer Cache-Richtlinie hinzufügen.