HTTPHeader-Änderung für Ihren Application Load Balancer - Elastic Load Balancing

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.

HTTPHeader-Änderung für Ihren Application Load Balancer

HTTPDie Änderung von Headern wird von Application Load Balancers sowohl für Anfrage- als auch für Antwortheader unterstützt. Durch die Header-Änderung haben Sie mehr Kontrolle über den Datenverkehr und die Sicherheit Ihrer Anwendungen, ohne dass Sie Ihren Anwendungscode aktualisieren müssen.

Header umbenennen

Mit der Funktion zum Umbenennen von Headern können Sie alle Transport Layer Security (TLS) -Header umbenennen, die der Application Load Balancer generiert und zu Anfragen hinzufügt, einschließlich sechs TLS M-Header und zwei TLS Header, Version und Chiffre.

Durch diese Möglichkeit, HTTP Header zu ändern, kann Ihr Application Load Balancer problemlos Anwendungen unterstützen, die speziell formatierte Anfrage- und Antwortheader verwenden.

Header Beschreibung

X-Amzn-Mtls-Clientcert-Seriennummer

Stellt sicher, dass das Ziel das spezifische Zertifikat identifizieren und verifizieren kann, das der Client während des Handshakes vorgelegt hat. TLS

X-Amzn-Mtls-Clientcert-Issuer

Hilft der Zielperson, das Client-Zertifikat zu validieren und zu authentifizieren, indem die Zertifizierungsstelle identifiziert wird, die das Zertifikat ausgestellt hat.

X-Amzn-Mtls-Clientcert-Betreff

Stellt dem Ziel detaillierte Informationen über die Entität zur Verfügung, für die das Client-Zertifikat ausgestellt wurde. Dies hilft bei der Identifizierung, Authentifizierung, Autorisierung und Protokollierung während der M-Authentifizierung. TLS

X-Amzn-Mtls-Clientcert-Validität

Ermöglicht dem Ziel, zu überprüfen, ob das verwendete Client-Zertifikat innerhalb des definierten Gültigkeitszeitraums liegt, und stellt so sicher, dass das Zertifikat nicht abgelaufen ist oder vorzeitig verwendet wird.

X-Amzn-Mtls-Clientcert-Leaf

Stellt das im TLS M-Handshake verwendete Client-Zertifikat bereit, sodass der Server den Client authentifizieren und die Zertifikatskette validieren kann. Dadurch wird sichergestellt, dass die Verbindung sicher und autorisiert ist.

X-Amzn-Mtls-Clientcert

Trägt das vollständige Client-Zertifikat. Ermöglicht es dem Ziel, die Echtheit des Zertifikats zu überprüfen, die Zertifikatskette zu validieren und den Client während des TLS M-Handshake-Prozesses zu authentifizieren.

X-Amzn-Version TLS

Gibt die Version des TLS Protokolls an, das für eine Verbindung verwendet wird. Es erleichtert die Bestimmung des Sicherheitsniveaus der Kommunikation, die Behebung von Verbindungsproblemen und die Sicherstellung der Einhaltung von Vorschriften.

X-Amzn-Verschlüsselungssuite TLS

Gibt die Kombination von kryptografischen Algorithmen an, die verwendet werden, um eine Verbindung zu sichern. TLS Auf diese Weise kann der Server die Sicherheit der Verbindung beurteilen, was bei der Behebung von Kompatibilitätsproblemen hilft und die Einhaltung der Sicherheitsrichtlinien gewährleistet.

Verwenden Sie den folgenden Befehl, um Ihrem Application Load Balancer Balancer-Listener das Umbenennen von Anforderungsheadern zu ermöglichen:

aws elbv2 modify-listener-attributes \ --listener-arn ARN \ --attributes Key="routing.http.request.actual_header_field_name.header_name",Value="desired_header_field_name"

Fügen Sie Header ein

Mithilfe von Insert-Headern können Sie Ihren Application Load Balancer so konfigurieren, dass sicherheitsrelevante Header zu Antworten hinzugefügt werden. Mit zehn neuen Attributen können Sie Header einfügen, darunter, und. HSTS CORS CSP

Der Standardwert für all diese Header ist leer. In diesem Fall ändert der Application Load Balancer diesen Antwortheader nicht.

Header Beschreibung

Strict-Transport-Security

Erzwingt für eine bestimmte Dauer HTTPS ausschließlich Verbindungen durch den Browser und schützt so vor man-in-the-middle Angriffen, Protokoll-Downgrades und Benutzerfehlern. Dabei wird sichergestellt, dass die gesamte Kommunikation zwischen dem Client und dem Ziel verschlüsselt ist.

Access-Control-Allow-Origin

Steuert, ob auf Ressourcen auf einem Ziel von unterschiedlichen Quellen aus zugegriffen werden kann. Dies ermöglicht sichere ursprungsübergreifende Interaktionen und verhindert gleichzeitig unbefugten Zugriff.

Access-Control-Allow-Methods

Gibt die HTTP Methoden an, die zulässig sind, wenn ursprungsübergreifende Anfragen an das Ziel gestellt werden. Es ermöglicht die Kontrolle darüber, welche Aktionen von unterschiedlichen Ursprüngen aus ausgeführt werden können.

Access-Control-Allow-Headers

Gibt an, welche benutzerdefinierten oder nicht einfachen Header in eine ursprungsübergreifende Anfrage aufgenommen werden können. Dieser Header gibt Zielen die Kontrolle darüber, welche Header von Clients unterschiedlicher Herkunft gesendet werden können.

Access-Control-Allow-Credentials

Gibt an, ob der Client Anmeldeinformationen wie Cookies, HTTP Authentifizierung oder Client-Zertifikate in ursprungsübergreifende Anfragen aufnehmen soll.

Access-Control-Expose-Headers

Ermöglicht dem Ziel, anzugeben, auf welche zusätzlichen Antwortheader der Client bei ursprungsübergreifenden Anfragen zugreifen kann.

Access-Control-Max-Age

Definiert, wie lange der Browser das Ergebnis einer Preflight-Anfrage zwischenspeichern kann, wodurch die Notwendigkeit wiederholter Preflight-Checks reduziert wird. Dies trägt zur Leistungsoptimierung bei, indem die Anzahl der Anfragen reduziert wird, die für bestimmte ursprungsübergreifende OPTIONS Anfragen erforderlich sind.

Content-Security-Policy

Sicherheitsfunktion, die Code-Injection-Angriffe verhindert, XSS indem beispielsweise gesteuert wird, welche Ressourcen wie Skripte, Stile, Bilder usw. von einer Website geladen und ausgeführt werden können.

X-Content-Type-Options

Mit der No-Sniff-Direktive wird die Websicherheit verbessert, indem verhindert wird, dass Browser den MIME Typ einer Ressource erraten. Sie stellt sicher, dass Browser Inhalte nur gemäß dem deklarierten Content-Type interpretieren

X-Frame-Options

Header-Sicherheitsmechanismus, der Click-Jacking-Angriffe verhindert, indem gesteuert wird, ob eine Webseite in Frames eingebettet werden kann. Werte wie DENY und SAMEORIGIN können sicherstellen, dass Inhalte nicht in bösartige oder nicht vertrauenswürdige Websites eingebettet werden.

Verwenden Sie den folgenden Befehl, um den Application Load Balancer Balancer-Listener so zu konfigurieren, dass er den HSTS Header einfügt:

aws elbv2 modify-listener-attributes \ --listener-arn ARN \ --attributes Key="routing.http.response.strict_transport_security.header_value",Value="max-age=time_in_sec;includeSubdomains;preload;"

Deaktivieren Sie Header

Mithilfe von Headern können Sie Ihren Application Load Balancer so konfigurieren, dass der server:awselb/2.0 Header aus den Antworten deaktiviert wird. Dadurch wird die Offenlegung serverspezifischer Informationen reduziert und gleichzeitig eine zusätzliche Schutzebene für Ihre Anwendung hinzugefügt.

Der Name des Attributs lautetrouting.http.response.server.enabled. Die verfügbaren Werte sind true oderfalse. Der Standardwert ist true.

Konfigurieren Sie Ihren Application Load Balancer Balancer-Listener mit dem folgenden Befehl so, dass der server Header nicht eingefügt wird:

aws elbv2 modify-listener-attributes \ --listener-arn ARN \ --attributes Key="routing.http.response.server.enabled",Value=false
Einschränkungen:
  • Header-Werte können die folgenden Zeichen enthalten

    • Alphanumerische Zeichen: a-zA-Z, und 0-9

    • Sonderzeichen: _ :;.,\/'?!(){}[]@<>=-+*#&`|~^%

  • Der Wert für das Attribut darf eine Größe von 1 KB nicht überschreiten.

  • Elastic Load Balancing führt grundlegende Eingabevalidierungen durch, um zu überprüfen, ob der Header-Wert gültig ist. Die Validierung kann jedoch nicht bestätigen, ob der Wert für einen bestimmten Header unterstützt wird.

  • Wenn Sie für ein Attribut einen leeren Wert angeben, kehrt der Application Load Balancer zum Standardverhalten zurück.

  • Header werden nur in HTTP Antworten mit den Codes 2xx oder 3xx eingefügt

Weitere Informationen finden Sie unter Listener-Attribute.