Ajout d'en-têtes personnalisés aux demandes d'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.

Ajout d'en-têtes personnalisés aux demandes d'origine

Vous pouvez configurer CloudFront pour ajouter des en-têtes personnalisés aux demandes qu'il envoie à votre origine. Ces en-têtes personnalisés vous permettent d'envoyer et de rassembler des informations à partir de votre origine que vous n'obtenez pas avec les demandes d'utilisateur standard. Ces en-têtes peuvent même être personnalisés pour chaque origine. CloudFront prend en charge les en-têtes personnalisés pour les origines personnalisées et pour Amazon S3.

Cas d'utilisation pour les en-têtes personnalisés d'origine

Vous pouvez utiliser les en-têtes personnalisés pour diverses tâches, telles que les suivantes :

Identifier les demandes provenant de CloudFront

Vous pouvez identifier les demandes provenant de votre origine CloudFront. Cela peut être utile si vous souhaitez savoir si les utilisateurs CloudFront contournent ou si vous utilisez plusieurs CDN et souhaitez obtenir des informations sur les demandes provenant de chaque CDN.

Note

Si vous utilisez une origine Amazon S3 avec journalisation des accès au serveur Amazon S3 activée, les journaux n'incluent pas les informations d'en-tête.

Détermination des demandes provenant d'une distribution particulière

Si vous configurez plusieurs CloudFront distributions pour utiliser la même origine, vous pouvez ajouter des en-têtes personnalisés différents dans chaque distribution. Vous pouvez alors utiliser les journaux de votre origine pour déterminer quelles demandes proviennent de quelle distribution CloudFront.

Activation du partage des ressources de plusieurs origines (CORS)

Si certains de vos utilisateurs ne prennent pas en charge le partage de ressources entre origines (CORS), vous pouvez configurer CloudFront pour toujours ajouter l'Originen-tête aux demandes qu'il envoie à votre source. Ensuite, vous pouvez configurer votre origine pour renvoyer l'en-tête Access-Control-Allow-Origin pour chaque demande. Vous devez également configurer CloudFront pour respecter les paramètres CORS.

Contrôle de l'accès au contenu

Vous pouvez utiliser les en-têtes personnalisés pour contrôler l'accès au contenu. En configurant votre origine pour répondre aux demandes uniquement lorsqu'elles incluent un en-tête personnalisé ajouté par CloudFront, vous empêchez les utilisateurs de contourner CloudFront et d'accéder à votre contenu directement sur l'origine. Pour de plus amples informations, veuillez consulter Restriction de l’accès à des fichiers d’origines personnalisées.

Configuration CloudFront pour ajouter des en-têtes personnalisés aux demandes d'origine

Pour configurer une distribution afin d'ajouter des en-têtes personnalisés aux demandes qu'elle envoie à votre origine, mettez à jour la configuration de l'origine via l'une des méthodes suivantes :

  • CloudFront console — Lorsque vous créez ou mettez à jour une distribution, spécifiez les noms et les valeurs des en-têtes dans les paramètres des en-têtes personnalisés d'Origin. Pour plus d’informations, consultez Création d’une distribution ou Mise à jour d’une distribution.

  • CloudFront API — Pour chaque origine à laquelle vous souhaitez ajouter des en-têtes personnalisés, spécifiez les noms et les valeurs des en-têtes dans le CustomHeaders champ intérieurOrigin. Pour plus d’informations, consultez CreateDistribution ou UpdateDistribution.

Si les noms et valeurs d'en-tête que vous spécifiez ne sont pas déjà présents dans la demande du visualiseur, CloudFront ajoutez-les à la demande d'origine. Si un en-tête est présent, CloudFront remplace la valeur de l'en-tête avant de transmettre la demande à l'origine.

Pour connaître les quotas (auparavant appelés limites) qui s'appliquent aux en-têtes personnalisés d'origine, veuillez consulter Quotas sur les en-têtes.

En-têtes personnalisés qui ne CloudFront peuvent pas être ajoutés aux demandes d'origine

Vous ne pouvez pas configurer CloudFront pour ajouter l'un des en-têtes suivants aux demandes qu'il envoie à votre origine :

  • Cache-Control

  • Connection

  • Content-Length

  • Cookie

  • Host

  • If-Match

  • If-Modified-Since

  • If-None-Match

  • If-Range

  • If-Unmodified-Since

  • Max-Forwards

  • Pragma

  • Proxy-Authorization

  • Proxy-Connection

  • Range

  • Request-Range

  • TE

  • Trailer

  • Transfer-Encoding

  • Upgrade

  • Via

  • En-têtes commençant par X-Amz-

  • En-têtes commençant par X-Edge-

  • X-Real-Ip

Configuration CloudFront pour transférer l'Authorizationen-tête

Lorsque CloudFront vous transférez une demande d'utilisateur à votre source, certains CloudFront en-têtes de visionnage sont supprimés par défaut, y compris l'Authorizationen-tête. Pour vous assurer que votre origine reçoit toujours l'en-tête Authorization dans les demandes d'origine, vous disposez des options suivantes :

  • Ajoutez l'en-tête Authorization à la clé de cache à l'aide d'une stratégie de cache. Tous les en-têtes de la clé de cache sont automatiquement inclus dans les demandes d'origine. Pour de plus amples informations, veuillez consulter Contrôle de la clé de cache.

  • Utilisez une stratégie de demande d'origine qui transfère tous les en-têtes d'utilisateurs à l'origine. Vous ne pouvez pas transférer l'Authorizationen-tête individuellement dans une politique de demande d'origine, mais lorsque vous transférez tous les en-têtes du lecteur, l'Authorizationen-tête est CloudFront inclus dans les demandes du lecteur. CloudFront fournit une politique de demande d'origine gérée pour ce cas d'utilisation, appelée Managed- AllViewer. Pour de plus amples informations, veuillez consulter Utilisation des stratégies de demande d'origine gérées.