Adicionar cabeçalhos de CloudFront solicitação - Amazon CloudFront

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Adicionar cabeçalhos de CloudFront solicitação

Você pode configurar CloudFront para adicionar cabeçalhos HTTP específicos às solicitações CloudFront recebidas dos visualizadores e encaminhadas para sua função de origem ou borda. Os valores desses cabeçalhos HTTP são baseados nas características do visualizador ou da solicitação do visualizador. Os cabeçalhos fornecem informações sobre o tipo de dispositivo, o endereço IP, a localização geográfica, o protocolo de solicitação (HTTP ou HTTPS), a versão HTTP, os detalhes da conexão TLS e a impressão digital JA3 do visualizador.

Com esses cabeçalhos, sua origem ou função de borda pode receber informações sobre o visualizador sem a necessidade de escrever seu próprio código para determiná-las. Se sua origem retornar respostas diferentes com base nas informações desses cabeçalhos, você poderá incluí-las na chave de cache para que as respostas sejam armazenadas em CloudFront cache separadamente. Por exemplo, sua origem pode responder com conteúdo em um idioma específico com base no país em que o visualizador está ou com conteúdo personalizado para um tipo de dispositivo específico. Sua origem também pode gravar esses cabeçalhos em arquivos de log, que você pode usar para determinar informações sobre onde seus visualizadores estão, em quais tipos de dispositivo eles estão e muito mais.

Para incluir cabeçalhos na chave de cache, use uma política de cache. Para obter mais informações, consulte Controlar a chave de cache e Noções básicas sobre a chave de cache.

Para receber esses cabeçalhos em sua origem, mas não incluí-los na chave de cache, use uma política de solicitação de origem. Para ter mais informações, consulte Controlar solicitações de origem.

Cabeçalhos para determinar o tipo de dispositivo do visualizador

Você pode adicionar os cabeçalhos a seguir para determinar o tipo de dispositivo do visualizador. Com base no valor do User-Agent cabeçalho, CloudFront define o valor desses cabeçalhos como true oufalse. Se o dispositivo se encaixar em mais de uma categoria, mais de um valor poderá ser true. Por exemplo, para alguns tablets, CloudFront define CloudFront-Is-Mobile-Viewer e CloudFront-Is-Tablet-Viewer paratrue.

  • CloudFront-Is-Android-Viewer— Definido como true quando CloudFront determina que o visualizador é um dispositivo com o sistema operacional Android.

  • CloudFront-Is-Desktop-Viewer— Definido como true quando CloudFront determina que o visualizador é um dispositivo desktop.

  • CloudFront-Is-IOS-Viewer— Definido como true quando CloudFront determina que o visualizador é um dispositivo com um sistema operacional móvel Apple, como iPhone, iPod touch e alguns dispositivos iPad.

  • CloudFront-Is-Mobile-Viewer— Definido como true quando CloudFront determina que o visualizador é um dispositivo móvel.

  • CloudFront-Is-SmartTV-Viewer— Definido como true quando CloudFront determina que o espectador é uma TV inteligente.

  • CloudFront-Is-Tablet-Viewer— Definido como true quando CloudFront determina que o visualizador é um tablet.

Cabeçalhos para determinar a localização do visualizador

Você pode adicionar os cabeçalhos a seguir para determinar a localização do espectador. CloudFront determina os valores desses cabeçalhos com base no endereço IP do visualizador. Para caracteres não ASCII nos valores desses cabeçalhos, CloudFront codifica por porcentagem o caractere de acordo com a seção 1.2 da RFC 3986.

  • CloudFront-Viewer-Address: contém o endereço IP do visualizador e a porta de origem da solicitação. Por exemplo, um valor de cabeçalho de 198.51.100.10:46532 significa que o endereço IP do visualizador é 198.51.100.10 e a porta da fonte da solicitação é 46532.

  • CloudFront-Viewer-ASN: contém o número de sistema autônomo (ASN) do visualizador.

    nota

    É possível adicionar CloudFront-Viewer-Address e CloudFront-Viewer-ASN a uma política de solicitação de origem, mas não a uma política de cache.

  • CloudFront-Viewer-Country: contém o código de duas letras do país do visualizador. Para obter uma lista de códigos de país, consulte ISO 3166-1 alfa-2.

Quando você adiciona os cabeçalhos a seguir, CloudFront aplica-os a todas as solicitações, exceto aquelas originadas na AWS rede:

  • CloudFront-Viewer-City: contém o nome da cidade do visualizador.

  • CloudFront-Viewer-Country-Name: contém o nome do país do visualizador.

  • CloudFront-Viewer-Country-Region: contém um código (de até três caracteres) que representa a região do visualizador. A região é a subdivisão de primeiro nível (a mais ampla ou menos específica) do código ISO 3166-2.

  • CloudFront-Viewer-Country-Region-Name: contém o nome da região do visualizador. A região é a subdivisão de primeiro nível (a mais ampla ou menos específica) do código ISO 3166-2.

  • CloudFront-Viewer-Latitude: contém a latitude aproximada do visualizador.

  • CloudFront-Viewer-Longitude: contém a longitude aproximada do visualizador.

  • CloudFront-Viewer-Metro-Code: contém o código metro do visualizador. Esse código só está presente quando o visualizador está nos Estados Unidos.

  • CloudFront-Viewer-Postal-Code: contém o CEP do visualizador.

  • CloudFront-Viewer-Time-Zone contém o fuso horário do visualizador, no formato de banco de dados de fuso horário da IANA (por exemplo, America/Los_Angeles).

Cabeçalhos para determinar a estrutura de cabeçalho do visualizador

Agora você pode adicionar os cabeçalhos a seguir para ajudar a identificar o visualizador com base nos cabeçalhos que ele envia. Por exemplo, navegadores diferentes podem enviar cabeçalhos HTTP em determinada ordem. Se o navegador especificado no cabeçalho User-Agent não corresponder à ordem de cabeçalho esperada desse navegador, você poderá negar a solicitação. Além disso, se o valor CloudFront-Viewer-Header-Count não corresponder ao número de cabeçalhos em CloudFront-Viewer-Header-Order, você poderá negar a solicitação.

  • CloudFront-Viewer-Header-Order: contém os nomes dos cabeçalhos do visualizador na ordem solicitada, separados por um sinal de dois pontos. Por exemplo: CloudFront-Viewer-Header-Order: Host:User-Agent:Accept:Accept-Encoding. Os cabeçalhos além do limite de caracteres de 7.680 são truncados.

  • CloudFront-Viewer-Header-Count: contém o número total de cabeçalhos do visualizador.

Outros CloudFront cabeçalhos

Você pode adicionar os seguintes cabeçalhos para determinar o protocolo, a versão, a impressão digital JA3 e os detalhes de conexão TLS do visualizador:

  • CloudFront-Forwarded-Proto: contém o protocolo da solicitação do visualizador (HTTP ou HTTPS).

  • CloudFront-Viewer-Http-Version: contém a versão HTTP da solicitação do visualizador.

  • CloudFront-Viewer-JA3-Fingerprint: contém a impressão digital JA3 do visualizador. A impressão digital JA3 pode ajudar você a determinar se a solicitação vem de um cliente conhecido, se é um malware ou um bot malicioso, ou se é uma aplicação esperada (na lista de permissões). Esse cabeçalho depende do pacote Client Hello SSL/TLS do visualizador e está presente apenas em solicitações HTTPS.

    nota

    Você pode adicionar CloudFront-Viewer-JA3-Fingerprint em uma política de solicitação de origem, mas não em uma política de cache.

  • CloudFront-Viewer-TLS— Contém a versão SSL/TLS, a cifra e informações sobre o handshake SSL/TLS usado para a conexão entre o visualizador e. CloudFront O valor do cabeçalho está no seguinte formato:

    SSL/TLS_version:cipher:handshake_information

    Para handshake_information, o cabeçalho contém um dos seguintes valores:

    • fullHandshake: foi realizado um handshake completo para a sessão SSL/TLS.

    • sessionResumed: uma sessão anterior de SSL/TLS foi retomada.

    • connectionReused: uma conexão SSL/TLS anterior foi reutilizada.

    Veja a seguir alguns exemplos de valores para esse cabeçalho:

    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

    Para obter a lista completa de possíveis versões e criptografias SSL/TLS que podem estar nesse valor de cabeçalho, consulte Protocolos e cifras suportados entre visualizadores e CloudFront.

    nota

    Você pode adicionar CloudFront-Viewer-TLS em uma política de solicitação de origem, mas não em uma política de cache.