Exigir HTTPS na comunicação entre o CloudFront e a origem do Amazon S3
Quando a origem é um bucket do Amazon S3, as opções para usar HTTPS para comunicação com o CloudFront dependem de como você está usando o bucket. Se o bucket do Amazon S3 estiver configurado como um endpoint de site, não será possível configurar o CloudFront para usar HTTPS para comunicação com a origem, pois o Amazon S3 não é compatível com conexões HTTPS nessa configuração.
Quando a origem é um bucket do Amazon S3 compatível com a comunicação HTTPS, o CloudFront sempre encaminha as solicitações para o S3 usando o protocolo que os visualizadores usaram para enviar as solicitações. A definição padrão da configuração Protocolo (somente origens personalizadas) é Match Viewer (Corresponder visualizador) e não pode ser alterada.
Para exigir HTTPS para comunicação entre o CloudFront e o Amazon S3, você deve alterar o valor de Viewer Protocol Policy (Política de protocolo do visualizador) para Redirect HTTP to HTTPS (Redirecionar HTTP para HTTPS) ou HTTPS Only (Somente HTTPS). O procedimento mais adiante nesta seção explica como usar o console do CloudFront para alterar a Viewer Protocol Policy (Política de protocolo do visualizador). Para informações sobre como usar a API do CloudFront para atualizar o elemento ViewerProtocolPolicy
de uma distribuição, consulte UpdateDistribution na Referência da API do Amazon CloudFront.
Quando você usa HTTPS com um bucket do Amazon S3 compatível com a comunicação HTTPS, o Amazon S3 fornece o certificado SSL/TLS, portanto, você não precisa fazer isso.
Exigir HTTPS para uma origem do Amazon S3
O procedimento a seguir mostra como configurar o CloudFront para exigir HTTPS para a origem do Amazon S3.
Como configurar o CloudFront para exigir HTTPS para a origem do Amazon S3
Faça login no AWS Management Console e abra o console do CloudFront em https://console.aws.amazon.com/cloudfront/v4/home
. -
No painel superior do console do CloudFront, escolha o ID da distribuição que você deseja atualizar.
-
Na guia Behaviors, escolha o comportamento de cache que você deseja atualizar e, em seguida, escolha Edit.
-
Especifique um dos seguintes valores para Viewer Protocol Policy:
- Redirect HTTP to HTTPS
-
Os visualizadores podem usar os dois protocolos, mas solicitações HTTP são automaticamente redirecionadas para HTTPS. O CloudFront retorna o código de status HTTP 301 (movido permanentemente) com o novo URL HTTPS. Depois, o visualizador reenvia a solicitação para o CloudFront usando o URL de HTTPS.
Importante
O CloudFront não redireciona solicitações
DELETE
,OPTIONS
,PATCH
,POST
ouPUT
de HTTP para HTTPS. Se você configurar o redirecionamento de um comportamento de cache para HTTPS, o CloudFront responderá às solicitações HTTPDELETE
,OPTIONS
,PATCH
,POST
ouPUT
para esse comportamento de cache com o código de status HTTP 403 (proibido).Quando um visualizador faz uma solicitação HTTP que é redirecionada para uma solicitação HTTPS, o CloudFront cobra pelas duas solicitações. Para a solicitação HTTP, a cobrança é somente pela solicitação e cabeçalhos retornados pelo CloudFront para o visualizador. Para a solicitação HTTPS, a cobrança é pela solicitação e pelos cabeçalhos e objeto retornados por sua origem.
- HTTPS Only
-
Os visualizadores só podem acessar seu conteúdo se estiverem usando HTTPS. Se um visualizador enviar uma solicitação HTTP, em vez de HTTPS, o CloudFront retornará o código de status HTTP 403 (proibido) e não retornará o objeto.
-
Escolha Yes, Edit.
-
Repita as etapas 3 a 5 para cada comportamento de cache adicional para o qual você deseja exigir HTTPS entre os visualizadores e o CloudFront, e entre o CloudFront e o S3.
-
Antes de usar a configuração atualizada em um ambiente de produção, confirme:
-
Se o padrão de caminho de cada comportamento de cache se aplica apenas às solicitações nas quais os visualizadores devem usar HTTPS.
-
Se os comportamentos de cache estão listados na ordem em que você deseja que o CloudFront os avalie. Para obter mais informações, consulte Padrão de caminho.
-
Se os comportamentos de cache estão roteando as solicitações para as origens corretas.
-