Código de status HTTP 400 (solicitação inválida) - Amazon CloudFront

Código de status HTTP 400 (solicitação inválida)

A distribuição do CloudFront pode enviar respostas de erro de solicitação inválida com o código de status HTTP 400 e uma mensagem semelhante à seguinte:

The authorization header is malformed; the region '<AWS Region>' is wrong; expecting '<AWS Region>'

Por exemplo:

The authorization header is malformed; the region 'us-east-1' is wrong; expecting 'us-west-2'

Esse problema pode ocorrer no seguinte cenário:

  1. A origem da distribuição do CloudFront é um bucket do Amazon S3.

  2. Você moveu o bucket do S3 de uma região da AWS para outra. Ou seja, você excluiu o bucket do S3 e, posteriormente, criou um novo bucket com o mesmo nome de bucket, mas em uma região da AWS diferente de onde o bucket original do S3 estava localizado.

Para corrigir esse erro, atualize a distribuição do CloudFront para que ele localize o bucket do S3 na região da AWS atual do bucket.

Como atualizar a distribuição do CloudFront

  1. Faça login no AWS Management Console e abra o console do CloudFront em https://console.aws.amazon.com/cloudfront/v3/home.

  2. Escolha a distribuição que produz esse erro.

  3. Escolha Origins and Origin Groups (Origens e Grupos de Origem).

  4. Localize a origem do bucket do S3 que você moveu. Marque a caixa de seleção ao lado dessa origem e escolha Edit (Editar).

  5. Escolha Yes, Edit. Você não precisa alterar nenhuma configuração antes de escolher Yes, Edit (Sim, editar).

Ao concluir essas etapas, o CloudFront reimplantará sua distribuição. O status da distribuição no console do CloudFront muda para In Progress (Em andamento) enquanto a distribuição está sendo implantada. Quando a implantação tiver sido concluída, o status da distribuição mudará para Deployed (Implantado), e você deverá parar de receber as respostas de erro AuthorizationHeaderMalformed. Mesmo após as alterações de status para Deployed (Implantado), pode levar algum tempo até que você pare de receber esse erro.