View a markdown version of this page

Modification de l'en-tête HTTP pour votre équilibreur de charge d'application - Elastic Load Balancing

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Modification de l'en-tête HTTP pour votre équilibreur de charge d'application

La modification des en-têtes HTTP est prise en charge par les équilibreurs de charge des applications, à la fois pour les en-têtes de requête et de réponse. Sans avoir à mettre à jour le code de votre application, la modification de l'en-tête vous permet de mieux contrôler le trafic et la sécurité de votre application.

Pour activer la modification de l'en-tête, consultezActiver la modification de l'en-tête.

Renommer mTLS/TLS les en-têtes

La fonctionnalité de renommage des en-têtes vous permet de configurer les noms des en-têtes mTLS et TLS que l'Application Load Balancer génère et ajoute aux demandes.

Cette capacité à modifier les en-têtes HTTP permet à votre équilibreur de charge d'application de prendre facilement en charge les applications qui utilisent des en-têtes de requête et de réponse spécifiquement formatés.

En-tête Description

X-Amzn-Mtls-Clientcert-Serial-Number

Garantit que la cible peut identifier et vérifier le certificat spécifique présenté par le client lors de la prise de contact TLS.

X-Amzn-Mtls-Clientcert-Issuer

Aide la cible à valider et à authentifier le certificat client en identifiant l'autorité de certification qui a émis le certificat.

X-Amzn-Mtls-Clientcert-Subject

Fournit à la cible des informations détaillées sur l'entité à laquelle le certificat client a été émis, ce qui facilite l'identification, l'authentification, l'autorisation et la journalisation lors de l'authentification mTLS.

X-Amzn-Mtls-Clientcert-Validity

Permet à la cible de vérifier que le certificat client utilisé se situe dans la période de validité définie, en s'assurant que le certificat n'est pas expiré ou utilisé prématurément.

X-Amzn-Mtls-Clientcert-Leaf

Fournit le certificat client utilisé dans le handshake mTLS, permettant au serveur d'authentifier le client et de valider la chaîne de certificats. Cela garantit que la connexion est sécurisée et autorisée.

X-Amzn-Mtls-Clientcert

Porte le certificat client complet. Permettre à la cible de vérifier l'authenticité du certificat, de valider la chaîne de certificats et d'authentifier le client pendant le processus de prise de contact mTLS.

X-Amzn-TLS-Version

Indique la version du protocole TLS utilisée pour une connexion. Il permet de déterminer le niveau de sécurité de la communication, de résoudre les problèmes de connexion et de garantir la conformité.

X-Amzn-TLS-Cipher-Suite

Indique la combinaison d'algorithmes cryptographiques utilisés pour sécuriser une connexion en TLS. Cela permet au serveur d'évaluer la sécurité de la connexion, d'aider à résoudre les problèmes de compatibilité et de garantir la conformité aux politiques de sécurité.

Ajouter des en-têtes de réponse

À l'aide de l'option Insérer des en-têtes, vous pouvez configurer votre équilibreur de charge d'application pour ajouter des en-têtes liés à la sécurité aux réponses. Grâce à ces attributs, vous pouvez insérer des en-têtes tels que HSTS, CORS et CSP.

Par défaut, ces en-têtes sont vides. Dans ce cas, l'Application Load Balancer ne modifie pas cet en-tête de réponse.

Lorsque vous activez un en-tête de réponse, l'équilibreur de charge d'application ajoute l'en-tête avec la valeur configurée à toutes les réponses. Si la réponse de la cible inclut l'en-tête de réponse HTTP, l'équilibreur de charge met à jour la valeur d'en-tête pour qu'elle soit la valeur configurée. Sinon, l'équilibreur de charge ajoute l'en-tête de réponse HTTP à la réponse avec la valeur configurée.

En-tête Description

Strict-Transport-Security

Renforce les HTTPS-only connexions par le navigateur pendant une durée spécifiée, ce qui contribue à la protection contre les attaques de type « man-in-the-middle », les dégradations de protocole et les erreurs des utilisateurs, tout en garantissant que toutes les communications entre le client et la cible sont cryptées.

Access-Control-Allow-Origin

Contrôle si les ressources d'une cible sont accessibles depuis différentes origines. Cela permet des interactions inter-origines sécurisées tout en empêchant tout accès non autorisé.

Access-Control-Allow-Methods

Spécifie les méthodes HTTP autorisées lors de l'envoi de requêtes d'origine croisée à la cible. Il permet de contrôler quelles actions peuvent être effectuées à partir de différentes origines.

Access-Control-Allow-Headers

Spécifie quels en-têtes personnalisés ou non simples peuvent être inclus dans une demande d'origine croisée. Cet en-tête permet aux cibles de contrôler quels en-têtes peuvent être envoyés par des clients de différentes origines.

Access-Control-Allow-Credentials

Spécifie si le client doit inclure des informations d'identification telles que des cookies, une authentification HTTP ou des certificats clients dans les requêtes inter-origines.

Access-Control-Expose-Headers

Permet à la cible de spécifier les en-têtes de réponse supplémentaires auxquels le client peut accéder dans les requêtes cross-origin.

Access-Control-Max-Age

Définit la durée pendant laquelle le navigateur peut mettre en cache le résultat d'une demande de contrôle préalable, réduisant ainsi la nécessité de procéder à des vérifications préalables répétées. Cela permet d'optimiser les performances en réduisant le nombre de requêtes OPTIONS requises pour certaines demandes inter-origines.

Content-Security-Policy

Fonction de sécurité qui empêche les attaques par injection de code telles que XSS en contrôlant quelles ressources telles que les scripts, les styles, les images, etc. peuvent être chargées et exécutées par un site Web.

X-Content-Type-Options

La directive no-sniff renforce la sécurité Web en empêchant les navigateurs de deviner le type MIME d'une ressource. Il garantit que les navigateurs n'interprètent le contenu que conformément aux Content-Type

X-Frame-Options

Mécanisme de sécurité des en-têtes qui permet de prévenir les attaques par click-jacking en contrôlant si une page Web peut être intégrée dans des cadres. Des valeurs telles que DENY et SAMEORIGIN peuvent garantir que le contenu n'est pas intégré à des sites Web malveillants ou non fiables.

Désactiver les en-têtes

À l'aide de désactiver les en-têtes, vous pouvez configurer votre équilibreur de charge d'application pour désactiver l'server:awselb/2.0en-tête des réponses. Cela réduit l'exposition des informations spécifiques au serveur, tout en ajoutant une couche de protection supplémentaire à votre application.

Le nom de l'attribut estrouting.http.response.server.enabled. Les valeurs disponibles sont true oufalse. La valeur par défaut est true.

Limitations

  • Les valeurs d'en-tête peuvent contenir les caractères suivants

    • Caractères alphanumériques : a-zA-Z, et 0-9

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

  • La valeur de l'attribut ne peut pas dépasser 1 000 octets.

  • Elastic Load Balancing effectue des validations d'entrée de base pour vérifier la validité de la valeur de l'en-tête. Cependant, la validation ne permet pas de confirmer si la valeur est prise en charge pour un en-tête spécifique.

  • Si vous définissez une valeur vide pour n'importe quel attribut, l'équilibreur de charge des applications reviendra au comportement par défaut.