En-têtes MTLS Viewer pour les politiques de cache et transférés à l'origine - Amazon CloudFront

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.

En-têtes MTLS Viewer pour les politiques de cache et transférés à l'origine

Lorsque vous utilisez l'authentification TLS mutuelle, CloudFront vous pouvez extraire des informations des certificats clients et les transmettre à vos origines sous forme d'en-têtes HTTP. Cela permet à vos serveurs d'origine d'accéder aux détails des certificats sans implémenter de logique de validation des certificats.

Les en-têtes suivants sont disponibles pour créer des comportements de cache :

Nom de l’en-tête Description Exemple de valeur
CloudFront-Numéro de série Viewer-Cert Représentation hexadécimale du numéro de série du certificat 4a : 3 f : 5 c : 92 : d : e 8 : 7 b : 6 c
CloudFront-Viewer-Cert-Emetteur RFC2253 représentation sous forme de chaîne du nom distinctif (DN) de l'émetteur CN=Rootcamtls.com, OU = Rootca, O = MTLS, L = Seattle, ST = Washington, C = États-Unis
CloudFront-Viewer-Cert-Sujet RFC2253 représentation sous forme de chaîne du nom distinctif (DN) du sujet CN=Client_.com, OU = Client-3, O = MTLS, ST = Washington, C = États-Unis
CloudFront-Viewer-Cert-Present 1 (présent) ou 0 (absent) indiquant si le certificat est présent. Cette valeur est toujours égale à 1 en mode obligatoire. 1
CloudFront-Viewer-Cert-Sha256 Le SHA256 hachage du certificat client 01fbf94fef5569753420c349f49adbfd80af5275377816e3ab1fb371b29cb586

Pour les demandes d'origine, deux en-têtes supplémentaires sont fournis, en plus des en-têtes ci-dessus disponibles pour les comportements du cache :

Nom de l’en-tête Description Exemple de valeur
CloudFront-Validité du certificat de visualisation ISO8601 format des dates NotBefore et NotAfter CloudFront- Validité du certificat d'affichage : =2024-09-21T 01:50:17 Z ; NotBefore =2024-09-20T 01:50:17 Z NotAfter
CloudFront-Viewer-Cert-Pem Format PEM codé par URL du certificat feuille CloudFront-Viewer-Cert-Pem : -----BEGIN%20CERTIFICATE-----%0AMIIG<... réduit... > NmrUlw %0A----END%20CERTIFICAT------------A

Configurer le transfert d'en-têtes

Console

En mode vérification, ajoute CloudFront automatiquement les en-têtes CloudFront-Viewer-Cert -* à toutes les demandes des utilisateurs. Pour transférer ces en-têtes vers votre source :

  1. Sur la page principale des distributions de la liste, sélectionnez votre distribution avec les lecteurs MTL activés et accédez à l'onglet Comportements

  2. Sélectionnez le comportement du cache et choisissez Modifier

  3. Dans la section Politique de demande d'origine, choisissez Créer une politique ou sélectionnez une politique existante

  4. Assurez-vous que les en-têtes suivants sont inclus dans la politique de demande d'origine :

    • CloudFront-Numéro de série Viewer-Cert

    • CloudFront-Viewer-Cert-Emetteur

    • CloudFront-Viewer-Cert-Sujet

    • CloudFront-Viewer-Cert-Present

    • Cloudfront Viewer-Cert-Sha256

    • CloudFront-Validité du certificat de visualisation

    • CloudFront-Viewer-Cert-Pem

  5. Choisissez Créer (pour les nouvelles politiques) ou Enregistrer les modifications (pour les politiques existantes)

  6. Sélectionnez la politique dans le comportement de votre cache et enregistrez les modifications

Utilisation de la AWS CLI

L'exemple suivant montre comment créer une politique de demande d'origine qui inclut les en-têtes mTLS pour le mode vérification :

aws cloudfront create-origin-request-policy \ --origin-request-policy-config '{ "Name": "MTLSHeadersPolicy", "HeadersConfig": { "HeaderBehavior": "whitelist", "Headers": { "Quantity": 5, "Items": [ "CloudFront-Viewer-Cert-Serial-Number", "CloudFront-Viewer-Cert-Issuer", "CloudFront-Viewer-Cert-Subject", "CloudFront-Viewer-Cert-Validity", "CloudFront-Viewer-Cert-Pem" ] } }, "CookiesConfig": { "CookieBehavior": "none" }, "QueryStringsConfig": { "QueryStringBehavior": "none" } }'

Considérations relatives au traitement des en-

Lorsque vous travaillez avec des en-têtes de certificat, tenez compte des meilleures pratiques suivantes :

  • Validation des en-têtes : vérifiez les valeurs des en-têtes des certificats à l'origine comme mesure de sécurité supplémentaire

  • Limites de taille des en-têtes : les en-têtes des certificats PEM peuvent être volumineux, assurez-vous que votre serveur d'origine peut les gérer

  • Considérations relatives au cache : l'utilisation d'en-têtes de certificat dans votre clé de cache augmente la fragmentation du cache

  • Demandes d'origine croisée : si votre application utilise le CORS, vous devrez peut-être le configurer pour autoriser les en-têtes de certificat

Étapes suivantes

Après avoir configuré le transfert d'en-têtes, vous pouvez implémenter la vérification de révocation des certificats à l'aide des fonctions de CloudFront connexion et KeyValueStore. Pour plus de détails sur la mise en œuvre des contrôles de révocation, consultezRévocation à l'aide de la fonction CloudFront de connexion et du KVS.