

# Configurar distribuições
<a name="distribution-working-with"></a>

Você deve criar uma distribuição do Amazon CloudFront para informar ao CloudFront de onde você deseja que o conteúdo seja entregue e os detalhes sobre como rastrear e gerenciar a entrega do conteúdo.

Quando você cria uma distribuição do CloudFront, o CloudFront define automaticamente a maior parte das configurações da distribuição para você com base no tipo de origem do conteúdo. Para ter mais informações sobre as configurações predefinidas, consulte [Referência de configurações de distribuição predefinidas](template-preconfigured-origin-settings.md). Opcionalmente, você pode editar manualmente suas configurações de distribuição. Para obter mais informações, consulte [Referência de configurações de todas as distribuições](distribution-web-values-specify.md).

As seguintes configurações podem ser definidas:
+ **A origem do conteúdo**: o bucket do Amazon S3, o canal do AWS Elemental MediaPackage, o contêiner do AWS Elemental MediaStore, o balanceador de carga do Elastic Load Balancing ou o servidor HTTP, do qual o CloudFront obtém os arquivos para distribuição. Você pode especificar qualquer combinação de até 25 origens para uma única distribuição.
+ **Acesso**: se você deseja que os arquivos fiquem disponíveis para todos ou se preferir restringir o acesso a alguns usuários.
+ **Segurança**: se você deseja habilitar a proteção do AWS WAF e exigir que os usuários usem HTTPS para acessar o conteúdo. Em distribuições multilocatário, somente listas de controle de acesso (ACLs) da web do AWS WAF V2 podem ser utilizadas.
+ **Chave de cache**: quais possíveis valores você deseja incluir na *chave de cache*. A chave de cache identifica exclusivamente cada arquivo no cache para uma determinada distribuição.
+ **Configurações de solicitação de origem**: se desejar que o CloudFront inclua cabeçalhos HTTP, cookies ou strings de consulta em solicitações enviadas à origem.
+ **Restrições geográficas**: se você deseja que o CloudFront impeça o acesso de usuários ao conteúdo em determinados países.
+ **Logs**: se você deseja que o CloudFront crie logs padrão ou logs de acesso em tempo real que mostrem a atividade do visualizador.

Para obter mais informações, consulte [Referência de configurações de todas as distribuições](distribution-web-values-specify.md).

Para saber o número máximo atual de distribuições que você pode criar para cada Conta da AWS, consulte [Cotas gerais para distribuições](cloudfront-limits.md#limits-web-distributions). Não há número máximo de arquivos que você pode veicular por distribuição.

Você pode usar distribuições na para fornecer o seguinte por HTTP ou HTTPS:
+ Conteúdo de download estático e dinâmico, como arquivos HTML, CSS, JavaScript e arquivos de imagem, usando HTTP ou HTTPS.
+ Vídeos sob demanda em diferentes formatos, como o Apple HTTP Live Streaming (HLS) e o Microsoft Smooth Streaming. (Em distribuições multilocatário, não é possível usar o Smooth Streaming.) Para obter mais informações, consulte [Fornecer vídeo sob demanda com o CloudFront](on-demand-video.md).
+ Um evento ao vivo, como uma reunião, congresso ou concerto, em tempo real. Para streaming ao vivo, você cria a distribuição automaticamente usando uma pilha do CloudFormation. Para obter mais informações, consulte [Fornecer streaming de vídeo com o CloudFront e os serviços de mídia da AWS](live-streaming.md).

Os tópicos a seguir fornecem mais detalhes sobre as distribuições do CloudFront e como configurá-las para atender às suas necessidades empresariais. Para obter informações sobre como criar uma distribuição, consulte [Criar uma distribuição](distribution-web-creating-console.md).

**Topics**
+ [Noções básicas sobre as distribuições multilocatário](distribution-config-options.md)
+ [Criar uma distribuição](distribution-web-creating-console.md)
+ [Referência de configurações de distribuição predefinidas](template-preconfigured-origin-settings.md)
+ [Referência de configurações de todas as distribuições](distribution-web-values-specify.md)
+ [Testar uma distribuição](distribution-web-testing.md)
+ [Atualizar uma distribuição](HowToUpdateDistribution.md)
+ [Marcar uma distribuição](tagging.md)
+ [Excluir uma distribuição](HowToDeleteDistribution.md)
+ [Usar várias origens com distribuições do CloudFront](DownloadDistS3AndCustomOrigins.md)
+ [Habilitar IPv6 para distribuições do CloudFront](cloudfront-enable-ipv6.md)
+ [Usar a implantação contínua do CloudFront para testar com segurança as alterações na configuração da CDN](continuous-deployment.md)
+ [Usar URLs personalizados adicionando nomes de domínio alternativos (CNAMEs)](CNAMEs.md)
+ [Usar WebSockets com distribuições do CloudFront](distribution-working-with.websockets.md)
+ [Solicite IPs estáticos anycast para usar na lista de permissões](request-static-ips.md)
+ [Usar gRPC com distribuições do CloudFront](distribution-using-grpc.md)

# Noções básicas sobre as distribuições multilocatário
<a name="distribution-config-options"></a>

É possível criar distribuições multilocatário do CloudFront com configurações que podem ser reutilizadas em vários locatários de distribuição. Com uma distribuição multilocatário, o CloudFront pode configurar as definições de distribuição para você com base no tipo de origem do conteúdo. Para ter mais informações sobre as configurações predefinidas, consulte [Referência de configurações de distribuição predefinidas](template-preconfigured-origin-settings.md).

Os benefícios de usar uma distribuição multilocatária em vez de uma distribuição padrão incluem:
+ Redução da carga operacional.
+ Configurações reutilizáveis para administradores da web e fornecedores de software gerenciarem a distribuição do CloudFront para várias aplicações web que entregam conteúdo aos usuários finais.
+ Integrações aprimoradas com outros Serviços da AWS para oferecer, em grande escala, gerenciamento automatizado de certificados, controles de segurança unificados e um controle de configuração descomplicado.
+ Manutenção de padrões de recursos consistentes em suas implementações. Defina as configurações que devem ser compartilhadas e especifique as personalizações das configurações a serem substituídas.
+ Configurações de origem e segurança personalizáveis para atender a necessidades específicas no nível do locatário da distribuição.
+ Organização dos locatários da distribuição em diferentes níveis. Por exemplo, se alguns locatários da distribuição precisarem do Origin Shield e outros não, você poderá agrupá-los em diferentes distribuições multilocatário.
+ Utilização de uma configuração de DNS comum em vários domínios.

Diferentemente de uma distribuição padrão, uma distribuição multilocatário não pode ser acessada de forma direta porque não tem um endpoint de roteamento do CloudFront. Portanto, ela deve ser usada em conjunto com um grupo de conexões e um ou mais locatários da distribuição. Embora as distribuições padrão tenham seu próprio endpoint do CloudFront e possam ser acessadas diretamente pelos usuários finais, elas não podem ser usadas como modelo para outras distribuições.

Consulte mais informações sobre cotas para distribuições multilocatário em [Cotas em distribuições multilocatário](cloudfront-limits.md#limits-template).

**Topics**
+ [Como funciona](#how-template-distribution-works)
+ [Termos](#template-distributions-concepts)
+ [Atributos não compatíveis](#unsupported-saas)
+ [Personalizações de locatários da distribuição](tenant-customization.md)
+ [Solicitar certificados para locatários de distribuição do CloudFront](managed-cloudfront-certificates.md)
+ [Criar grupo de conexões personalizado (opcional)](custom-connection-group.md)
+ [Migrar uma distribuição multilocatário](template-migrate-distribution.md)

## Como funciona
<a name="how-template-distribution-works"></a>

Em uma *distribuição padrão*, a distribuição contém todas as configurações que você deseja habilitar para seu site ou aplicação, como configurações de origem, comportamentos de cache e configurações de segurança. Se você quisesse criar um site separado e usar várias das mesmas configurações, seria preciso criar outra distribuição a cada vez.

As distribuições multilocatário do CloudFront são diferentes, pois é possível criar uma distribuição multilocatário inicial. Para cada novo site, você cria um locatário de distribuição que herda automaticamente os valores definidos da distribuição de origem. Em seguida, você personaliza configurações específicas para o respectivo locatário.

**Visão geral**

1. Para começar, primeiro crie uma distribuição multilocatário. O CloudFront define as configurações de distribuição para você com base no tipo de origem do conteúdo. Você pode personalizar as configurações para todas as origens, exceto para origens de VPC. As configurações de origem de VPC são personalizadas no próprio recurso de origem de VPC. Para obter mais informações sobre as configurações de distribuição multilocatário personalizáveis, consulte [Referência de configurações de distribuição predefinidas](template-preconfigured-origin-settings.md).
   + O certificado TLS usado para a distribuição multilocatário pode ser herdado pelos locatários da distribuição. Como a distribuição multilocatário em si não é roteável, ela não terá um nome de domínio associado a ela.

1. Por padrão, o CloudFront cria um grupo de conexões para você. O grupo de conexões controla como as solicitações de conteúdo do visualizador se conectam ao CloudFront. É possível personalizar algumas configurações de roteamento no grupo de conexões.

   Você pode alterar isso criando manualmente seu próprio grupo de conexões. Para obter mais informações, consulte [Criar grupo de conexões personalizado (opcional)](custom-connection-group.md).

1. Em seguida, crie um ou mais locatários de distribuição. O locatário da distribuição é a “porta de entrada” para que os visualizadores acessem seu conteúdo. Cada locatário da distribuição faz referência à distribuição multilocatário e é automaticamente associado ao grupo de conexões que o CloudFront criou para você. O locatário da distribuição pode ter um domínio ou subdomínio específico.

1. Depois, você poderá personalizar algumas configurações do locatário da distribuição, como domínios personalizados e caminhos de origem. Para obter mais informações, consulte [Personalizações de locatários da distribuição](tenant-customization.md).

1. Por fim, você deve atualizar o registro de DNS em seu host DNS para rotear o tráfego para o locatário da distribuição. Para fazer isso, obtenha o valor do endpoint do CloudFront do grupo de conexões e crie um registro CNAME que aponte para o endpoint do CloudFront.

**Example Exemplo**  
O gráfico a seguir demonstra como uma distribuição multilocatário, os locatários da distribuição e os grupos de conexões funcionam juntos para fornecer conteúdo aos visualizadores em vários domínios.  

1. A distribuição multilocatário define as configurações herdadas para cada locatário da distribuição. Você usa a distribuição multilocatário como modelo.

1. Cada locatário da distribuição criado com base na distribuição multilocatário tem seu próprio domínio.

1. Os locatários da distribuição são adicionados automaticamente ao grupo de conexões criado pelo CloudFront quando você criou a distribuição multilocatário. O grupo de conexões controla como as solicitações de conteúdo do visualizador se conectam ao CloudFront. 

![\[Como as distribuições multilocatário funcionam com os locatários da distribuição.\]](http://docs.aws.amazon.com/pt_br/AmazonCloudFront/latest/DeveloperGuide/images/template_distribution.png)


Para obter instruções detalhadas sobre como criar uma distribuição multilocatário, consulte [Criar uma distribuição do CloudFront no console](distribution-web-creating-console.md#create-console-distribution).

## Termos
<a name="template-distributions-concepts"></a>

Os seguintes conceitos descrevem os componentes das distribuições multilocatário:

**Distribuição multilocatário**  
Um esquema de distribuição multilocatário que especifica todas as configurações em comum para quaisquer locatários da distribuição, como comportamento do cache, proteções de segurança e origens. As distribuições multilocatário não podem atender ao tráfego diretamente. Elas devem ser usadas com grupos de conexões e locatários da distribuição.

**Distribuição padrão**  
Uma distribuição que não oferece a funcionalidade multilocatário. Essas distribuições são mais adequadas para sites ou aplicações isoladas.

**Locatário da distribuição**  
O locatário da distribuição herda a configuração da distribuição multilocatário. Algumas definições de configuração podem ser personalizadas para cada locatário da distribuição. O locatário da distribuição deve ter um certificado TLS válido, que pode ser herdado da distribuição multilocatário, desde que abranja o domínio ou subdomínio do respectivo locatário.  
Ele deve estar associado a um grupo de conexões. O CloudFront cria um grupo de conexões para você quando você cria um locatário de distribuição e atribui automaticamente qualquer locatário a esse grupo de conexões.

**Multilocação**  
Você pode usar a distribuição multilocatário para oferecer conteúdo em vários domínios e, ao mesmo tempo, compartilhar a configuração e a infraestrutura. Essa abordagem permite que diferentes domínios (chamados de locatários) usem configurações comuns da distribuição multilocatário, mantendo suas próprias personalizações.

**Grupo de conexões**  
Oferece o endpoint de roteamento do CloudFront que disponibiliza conteúdo aos visualizadores. Associe cada locatário da distribuição a um grupo de conexões para obter o endpoint de roteamento do CloudFront correspondente ao registro CNAME criado para o domínio ou subdomínio do locatário da distribuição. Os grupos de conexões podem ser compartilhados entre vários locatários da distribuição. Eles gerenciam as configurações de roteamento para locatários da distribuição, como as configurações da lista de IPv6 e IPs anycast.

**Parâmetros**  
Uma lista de pares de chave-valor para valores de espaço reservado, como caminhos de origem e nomes de domínio. É possível definir parâmetros em sua distribuição multilocatário e atribuir valores a esses parâmetros para cada locatário da distribuição. Você escolhe se os valores dos parâmetros devem ser inseridos para o locatário da distribuição.  
Se você não atribuir um valor a um parâmetro opcional em um locatário da distribuição, será usado o valor padrão da distribuição multilocatário.

**Endpoint de roteamento do CloudFront**  
DNS canônico referente ao grupo de conexões, como `d123.cloudfront.net`. Usado no registro CNAME para o domínio ou subdomínio do locatário da distribuição.

**Personalizações**  
Você pode personalizar os locatários da distribuição para que usem configurações *diferentes* da distribuição multilocatário. Você pode especificar uma lista de controle de acesso (ACL) da web do AWS WAF diferente, certificados TLS e restrições geográficas para cada locatário da distribuição.

## Atributos não compatíveis
<a name="unsupported-saas"></a>

Os recursos a seguir não podem ser usados com uma distribuição multilocatário. Se você quiser criar outra distribuição multilocatário usando as mesmas configurações da distribuição padrão, observe que algumas configurações não estão disponíveis. 

**Observações**  
No momento, as políticas do AWS Firewall Manager se aplicam somente às distribuições padrão. O Firewall Manager será compatível com distribuições multilocatário em uma versão futura.
Diferentemente das distribuições padrão, você especifica o nome de domínio (alias) para cada *locatário da distribuição*. Para ter mais informações, consulte [Solicitar certificados para locatários de distribuição do CloudFront](managed-cloudfront-certificates.md) e a operação de API [CreateDistributionTenant](https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_CreateDistributionTenant.html).
+ [Implantação contínua](continuous-deployment.md)
+ [Identidade do acesso de origem (OAI)](private-content-restricting-access-to-s3.md#private-content-restricting-access-to-s3-oai): em vez disso, use o [controle de acesso à origem (OAC)](private-content-restricting-access-to-origin.md).
+ [Suporte a SSL personalizado com IP dedicado](DownloadDistValuesGeneral.md#DownloadDistValuesClientsSupported): somente o método `sni-only` é permitido.
+ [ACL da web do AWS WAF Classic (V1)](DownloadDistValuesGeneral.md#DownloadDistValuesWAFWebACL): somente ACLs da web doAWS WAF V2 são permitidas.
+ [Registro em log padrão (legado)](standard-logging-legacy-s3.md)
+ [TTL mínima](DownloadDistValuesCacheBehavior.md#DownloadDistValuesMinTTL)
+ [TTL padrão](DownloadDistValuesCacheBehavior.md#DownloadDistValuesDefaultTTL)
+ [TTL máxima](DownloadDistValuesCacheBehavior.md#DownloadDistValuesMaxTTL)
+ [ForwardedValues](https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_ForwardedValues.html)
+ [PriceClass](https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_DistributionConfig.html)
+ [Signatários confiáveis ](DownloadDistValuesCacheBehavior.md#DownloadDistValuesTrustedSigners)
+ [Smooth Streaming](DownloadDistValuesCacheBehavior.md#DownloadDistValuesSmoothStreaming)
+ [AWS Identity and Access Management (Certificados do servidor do (IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_server-certs.html)
+ [Endereços IP dedicados](cnames-https-dedicated-ip-or-sni.md#cnames-https-dedicated-ip)
+ [Versão mínima do protocolo SSL (SSLv3](DownloadDistValuesGeneral.md#DownloadDistValues-security-policy)

As configurações a seguir não podem ser definidas em uma distribuição multilocatário ou em um locatário da distribuição. Em vez disso, defina os valores que você deseja em um grupo de conexões. Todos os locatários da distribuição associados ao grupo de conexões usarão essas configurações. Para obter mais informações, consulte [Criar grupo de conexões personalizado (opcional)](custom-connection-group.md).
+ [Habilitar IPv6 (solicitações do visualizador)](DownloadDistValuesGeneral.md#DownloadDistValuesEnableIPv6)
+ [Lista de IPs estáticos anycast](request-static-ips.md)

# Personalizações de locatários da distribuição
<a name="tenant-customization"></a>

Ao usar uma distribuição multilocatário, os locatários da distribuição herdam a configuração da distribuição multilocatário. No entanto, não é possível personalizar algumas configurações no nível de locatário da distribuição.

Você pode personalizar as seguintes opções:
+ **Parâmetros**: os parâmetros são pares de chave-valor que podem ser usados para o domínio de origem ou os caminhos de origem. Consulte [Como os parâmetros funcionam com locatários da distribuição](#tenant-customize-parameters).
+ **ACL da web do AWS WAF (V2)**: você pode especificar uma ACL da web separada para o locatário da distribuição, que *substituirá* a ACL da web usada para a distribuição multilocatário. Você também pode desabilitar essa configuração para um locatário específico da distribuição, o que significa que esse locatário não herdará as proteções da ACL da web da distribuição multilocatário. Para obter mais informações, consulte [AWS WAFACL da WEb do](DownloadDistValuesGeneral.md#DownloadDistValuesWAFWebACL).
+ **Restrições geográficas**: as restrições geográficas especificadas para um locatário da distribuição *substituirão* quaisquer restrições geográficas da distribuição multilocatário. Por exemplo, se você bloquear a Alemanha (DE) em sua distribuição multilocatário, todos os locatários da distribuição associados também a bloquearão. No entanto, se você permiti-la para um locatário específico da distribuição, as configurações desse locatário substituirão as configurações da distribuição multilocatário. Para obter mais informações, consulte [Restringir a distribuição geográfica do conteúdo](georestrictions.md).
+ **Caminhos de invalidação**: especifique os caminhos de arquivo referentes ao conteúdo que você deseja invalidar para o locatário da distribuição. Para obter mais informações, consulte [Invalidar arquivos](Invalidation_Requests.md).
+ **Certificados TLS personalizados**: os certificados do AWS Certificate Manager (ACM) que você especifica para locatários da distribuição são complementares ao certificado fornecido na distribuição multilocatário. Contudo, se o mesmo domínio for coberto pelos certificados da distribuição multilocatário e da distribuição do locatário, o certificado do locatário será usado. Para obter mais informações, consulte [Solicitar certificados para locatários de distribuição do CloudFront](managed-cloudfront-certificates.md).
+ **Nomes de domínio**: é necessário especificar pelo menos um nome de domínio por locatário da distribuição.

## Como os parâmetros funcionam com locatários da distribuição
<a name="tenant-customize-parameters"></a>

Um parâmetro é um par de chave-valor que você pode usar para valores de espaço reservado. Defina os parâmetros que você deseja usar na distribuição multilocatário e especifique se eles são obrigatórios.

Ao definir parâmetros em uma distribuição multilocatário, você escolhe se esses parâmetros devem ser inseridos no nível de locatário da distribuição.
+ Se você definir os parâmetros como *obrigatórios* na distribuição multilocatário, eles deverão ser inseridos no nível de locatário da distribuição. (Eles não são herdados.)
+ Se os parâmetros *não forem obrigatórios*, você poderá fornecer um valor padrão na distribuição multilocatário, que será herdado pelo locatário da distribuição.

Você também pode usar parâmetros nas seguintes propriedades:
+ Nome do domínio de origem
+ Caminho de origem

Na distribuição multilocatário, você pode definir até dois parâmetros para cada uma das propriedades anteriores.

## Parâmetros de exemplo
<a name="examples-parameters"></a>

Veja os exemplos a seguir para usar parâmetros para o nome do domínio e o caminho de origem.

**Parâmetros do nome de domínio**

Na configuração de distribuição multilocatária, você pode definir um parâmetro para o nome de domínio de origem, como nos exemplos a seguir:

**Amazon S3**
+ `{{parameter1}}.amzn-s3-demo-logging-bucket.s3.us-east-1.amazonaws.com`
+ `{{parameter1}}–amzn-s3-demo-logging-bucket.s3.us-east-1.amazonaws.com`

**Origens personalizadas**
+ `{{parameter1}}.lambda-url.us-east-1.on.aws`
+ `{{parameter1}}.mediapackagev2.ap-south-1.amazonaws.com`

Ao criar um locatário de distribuição, especifique o valor a ser usado para `parameter1`.

```
"Parameters": [
  {
    "Name": "parameter1",
    "Value": "mycompany-website"
  }
]
```

Usando os exemplos anteriores especificados na distribuição multilocatária, o nome de domínio de origem do locatário da distribuição é resolvido para o seguinte: 
+ `mycompany-website.amzn-s3-demo-bucket3.s3.us-east-1.amazonaws.com`
+ `mycompany-website–amzn-s3-demo-bucket3.s3.us-east-1.amazonaws.com`
+ `mycompany-website.lambda-url.us-east-1.on.aws`
+ `mycompany-website.mediapackagev2.ap-south-1.amazonaws.com`

**Parâmetros do caminho de origem**

Da mesma forma, você pode definir parâmetros para o caminho de origem na distribuição multilocatária, como nos exemplos a seguir:
+ `/{{parameter2}}`
+ `/{{parameter2}}/test`
+ `/public/{{parameter2}}/test`
+ `/search?name={{parameter2}}`

Ao criar um locatário de distribuição, especifique o valor a ser usado para `parameter2`.

```
"Parameters": [
  {
    "Name": "parameter2",
    "Value": "myBrand"
  }
]
```

Usando os exemplos anteriores especificados na distribuição multilocatária, o caminho de origem do locatário da distribuição é resolvido para o seguinte: 
+ `/myBrand`
+ `/myBrand/test`
+ `/public/myBrand/test`
+ `/search?name=myBrand`



**Example Exemplo**  
É necessário criar vários sites (locatários) para seus clientes e garantir que cada recurso de locatário da distribuição use os valores corretos.  

1. Você cria uma distribuição multilocatário e inclui dois parâmetros para a configuração de locatário da distribuição.

1. Com relação ao nome de domínio de origem, você cria um parâmetro chamado *customer-name* e especifica que ele é obrigatório. Você insere o parâmetro antes do bucket do S3, para que ele apareça como: 

   `{{customer-name}}.amzn-s3-demo-bucket3.s3.us-east-1.amazonaws.com`.

1. Para o caminho de origem, você cria um segundo parâmetro chamado *my-theme* e especifica que ele é opcional, com um valor padrão *basic*. Seu caminho de origem aparece como: `/{{my-theme}}`

1. Quando você criar um locatário de distribuição:
   + Para o nome de domínio, você deve especificar um valor para *customer-name*, porque ele está marcado como obrigatório na distribuição multilocatária.
   + Para o caminho de origem, você pode, opcionalmente, especificar um valor para *my-theme* ou usar o valor padrão.

# Solicitar certificados para locatários de distribuição do CloudFront
<a name="managed-cloudfront-certificates"></a>

Quando você cria um locatário de distribuição, ele herda o certificado do AWS Certificate Manager (ACM) compartilhado da distribuição multilocatário. Esse certificado compartilhado oferece HTTPS a todos os locatários associados à distribuição multilocatário.

Ao criar ou atualizar um locatário de distribuição do CloudFront para adicionar domínios, é possível adicionar um certificado gerenciado do CloudFront emitido pelo ACM. Em seguida, o CloudFront obtém um certificado validado por HTTP do ACM em seu nome. Você pode usar esse certificado do ACM de nível de locatário para configurações de domínio personalizadas. O CloudFront simplifica o fluxo de trabalho de renovação para ajudar a manter os certificados atualizados e garantir a entrega de conteúdo ininterrupta. 

**nota**  
O certificado pertence a você, mas ele pode ser usado*somente* com os recursos do CloudFront e a chave privada *não* pode ser exportada.

É possível solicitar o certificado ao criar ou atualizar o locatário da distribuição.

**Topics**
+ [Adicionar um domínio e um certificado (locatário da distribuição)](#vanity-domain-tls-tenant)
+ [Concluir configuração do domínio](#complete-domain-ownership)
+ [Apontar domínios para o CloudFront](#point-domains-to-cloudfront)
+ [Considerações sobre domínio (locatário da distribuição)](#tenant-domain-considerations)
+ [Domínios curinga (locatário de distribuição)](#tenant-wildcard-domains)

## Adicionar um domínio e um certificado (locatário da distribuição)
<a name="vanity-domain-tls-tenant"></a>

O procedimento a seguir mostra como adicionar um domínio e atualizar o certificado para um locatário da distribuição.

**Como adicionar um domínio e um certificado (locatário da distribuição)**

1. Faça login no Console de gerenciamento da AWS e abra o console do CloudFront em [https://console.aws.amazon.com/cloudfront/v4/home](https://console.aws.amazon.com/cloudfront/v4/home).

1. Em **SaaS** escolha **Locatários da distribuição**.

1. Pesquise o locatário da distribuição. Use o menu suspenso na barra de pesquisa para filtrar por domínio, nome, ID da distribuição, ID do certificado, ID do grupo de conexões ou ID da ACL da web.

1. Escolha o nome da distribuição.

1. Em **Domínios**, escolha **Gerenciar domínio**.

1. Em **Certificado**, escolha se você deseja um **certificado TLS personalizado** para o locatário da distribuição. O certificado confirma se você tem autorização para usar o nome de domínio. Você deve importar o certificado na região Leste dos EUA (Norte da Virgínia).

1. Em **Domínios**, escolha **Adicionar domínio** e insira o nome do domínio. Dependendo do domínio, as mensagens a seguir aparecerão embaixo do nome de domínio que você inserir.
   + Esse domínio é coberto pelo certificado.
   + Esse domínio é coberto pelo certificado, com validação pendente.
   + Esse domínio não é coberto por um certificado. (Isso significa que é preciso verificar a propriedade do domínio.)

1. Escolha **Atualizar locatário da distribuição**.

   Na página de detalhes do locatário, em **Domínios**, é possível ver os seguintes campos:
   + **Propriedade do domínio**: o status da propriedade do domínio. A propriedade do domínio deverá ser verificada usando a validação do certificado TLS antes que o CloudFront possa fornecer o conteúdo.
   + **Status do DNS**: os registros de DNS do domínio devem apontar para o CloudFront para que o tráfego seja roteado corretamente.

1. Se a propriedade do domínio não for verificada, na página de detalhes do locatário, em **Domínios**, escolha **Concluir configuração do domínio** e, em seguida, conclua o procedimento a seguir para apontar o registro de DNS para o nome de domínio do CloudFront.

## Concluir configuração do domínio
<a name="complete-domain-ownership"></a>

Siga estes procedimentos para verificar se o domínio dos locatários da distribuição pertence a você. Dependendo do domínio, escolha um dos procedimentos a seguir.

**nota**  
Se o domínio já estiver apontado para o CloudFront com um registro de alias do Amazon Route 53, adicione seu registro de DNS TXT com `_cf-challenge.` na frente do nome de domínio. Esse registro TXT verifica se o nome de domínio está vinculado ao CloudFront. Repita esta etapa para cada domínio. Veja abaixo como atualizar seu registro TXT:  
Nome do registro: .: `_cf-challenge.DomainName`
Tipo de registro: `TXT`.
Valor do registro: .: `CloudFrontRoutingEndpoint`
Por exemplo, o registro TXT pode ser semelhante ao seguinte: .: `_cf-challenge.example.com TXT d111111abcdef8.cloudfront.net`  
Você pode encontrar seu endpoint de roteamento do CloudFront na página de detalhes de locatários de distribuição do console ou usar a ação de API [ListConnectionGroups](https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_ListConnectionGroups.html) na *Referência de API do Amazon CloudFront* para encontrá-lo.

**dica**  
Se você é um provedor de SaaS e deseja permitir a emissão de certificados sem exigir que seus clientes (locatários) adicionem um registro TXT diretamente ao DNS deles, faça o seguinte:  
Se você é proprietário do domínio `example-saas-provider.com`, atribua subdomínios aos seus locatários, como `customer-123.example-saas-provider.com`
No seu DNS, adicione o registro TXT `_cf-challenge.customer-123.example-saas-provider.com TXT d111111abcdef8.cloudfront.net` à sua configuração de DNS.
Em seguida, seus clientes (os locatários) podem atualizar seu próprio registro DNS para mapear o nome de domínio deles para o subdomínio que você forneceu.  
`www.customer-domain.com CNAME customer-123.example-saas-provider.com`

------
#### [ I have existing traffic ]

Selecione essa opção se seu domínio não puder passar por tempo de inatividade. Você deve ter acesso ao seu servidor de origem/web. Use o procedimento a seguir para validar a propriedade do domínio.

**Como concluir a configuração do domínio quando você já tem tráfego**

1. Em **Especificar tráfego da web**, escolha **Já tenho tráfego** e selecione **Próximo**.

1. Em **Verificar a propriedade do domínio**, escolha uma das seguintes opções:
   + **Usar certificado existente**: pesquise um certificado do ACM já em vigor ou insira o ARN do certificado que abranja os domínios listados.
   + **Upload de arquivo manual**: escolha essa opção se você tiver acesso direto para fazer upload de arquivos no seu servidor web. 

     Para cada domínio, crie um arquivo de texto simples que contenha o token de validação em **Local do token** e faça upload em sua origem no **caminho de arquivo** especificado no servidor existente. O caminho para esse arquivo deve ser semelhante ao seguinte exemplo: `/.well-known/pki-validation/acm_9c2a7b2ec0524d09fa6013efb73ad123.txt`. Após a conclusão dessa etapa, o ACM verifica o token e emite o certificado TLS para o domínio.
   + **Redirecionamento HTTP**: escolha essa opção se você não tiver acesso direto para fazer upload de arquivos no seu servidor web ou se estiver usando um serviço de CDN ou proxy.

     Para cada domínio, crie um redirecionamento 301 no servidor existente. Copie o caminho conhecido em **Redirecionar de** e aponte para o endpoint do certificado especificado em **Redirecionar para**. O redirecionamento deve ser semelhante ao seguinte exemplo:

     ```
     If the URL matches: example.com/.well-known/pki-validation/leabe938a4fe077b31e1ff62b781c123.txt
     Then the settings are:Forwarding URL
     Then 301 Permanent Redirect:To validation.us-east-1.acm-validations.aws/123456789012/.well-known/pki-validation/leabe938a4fe077b31e1ff62b781c123.txt
     ```
**nota**  
Você pode escolher **Verificar status do certificado** para verificar quando o ACM emite o certificado para o domínio.

1. Escolha **Próximo**.

1. Conclua as etapas referentes a [Apontar domínios para o CloudFront](#point-domains-to-cloudfront).

------
#### [ I don't have traffic ]

Selecione essa opção se você estiver adicionando novos domínios. O CloudFront gerenciará a validação do certificado para você.

**Como concluir a configuração do domínio quando você ainda não tem tráfego**

1. Em **Especificar tráfego da web**, escolha **Ainda não tenho tráfego**.

1. Para cada nome de domínio, conclua as etapas referentes a [Apontar domínios para o CloudFront](#point-domains-to-cloudfront).

1. Depois de atualizar o registro de DNS de cada nome de domínio, escolha **Próximo**.

1. Aguarde a emissão do certificado.
**nota**  
Você pode escolher **Verificar status do certificado** para verificar quando o ACM emite o certificado para o domínio.

1. Selecione **Enviar**.

------

## Apontar domínios para o CloudFront
<a name="point-domains-to-cloudfront"></a>

Atualize os registros de DNS para rotear o tráfego de cada domínio para o endpoint de roteamento do CloudFront. Você pode ter vários nomes de domínio, mas eles devem ser todos resolvidos nesse endpoint.

**Como apontar domínios para o CloudFront**

1. Copie o valor do endpoint de roteamento do CloudFront; por exemplo, d111111abcdef8.cloudfront.net.

1. Atualize os registros de DNS para rotear o tráfego de cada domínio para o endpoint de roteamento do CloudFront.

   1. Faça login no registrador de domínio ou no console de gerenciamento do provedor de DNS.

   1. Acesse a seção de gerenciamento de DNS do seu domínio.
      + **Para subdomínios**: crie um registro CNAME. Por exemplo:
        + **Nome**: seu subdomínio (como `www` ou `app`).
        + **Valor/destino**: o endpoint de roteamento do CloudFront.
        + **Tipo de registro**: CNAME.
        + **TTL**: 3.600 (ou o que for apropriado para seu caso de uso).
      + **Para domínios apex/raiz**: isso requer uma configuração de DNS exclusiva, porque os registros CNAME padrão não podem ser usados no nível do domínio raiz ou apex. Como a maioria dos provedores de DNS não oferece suporte a registros ALIAS, recomendamos criar um registro ALIAS no Route 53. Por exemplo:
        + **Nome**: o domínio ápex (como `example.com`).
        + **Tipo de registro**: A.
        + **Alias**: sim.
        + **Destino do alias**: o endpoint de roteamento do CloudFront.
        + **Política de roteamento**: simples (ou o que for apropriado para seu caso de uso).

   1. Verifique se a alteração de DNS foi propagada. (Isso geralmente acontece quando o TTL expira. Às vezes, pode levar de 24 a 48 horas.) Use uma ferramenta, como `dig` ou `nslookup`.

      ```
      dig www.example.com
      # Should eventually return a CNAME pointing to your CloudFront routing endpoint
      ```

1. Retorne ao console do CloudFront e escolha **Enviar**. Quando o domínio estiver ativo, o CloudFront atualizará o respectivo status para indicar que o domínio está pronto para atender ao tráfego.

Para obter mais informações, consulte a documentação do seu provedor de DNS:
+ [Cloudflare](https://developers.cloudflare.com/dns/manage-dns-records/how-to/create-dns-records/)
+ [ClouDNS](https://www.cloudns.net/wiki/article/9/)
+ [DNSimple](https://support.dnsimple.com/categories/dns/)
+ [Gandi.net](https://www.gandi.net/)
+ [GoDaddy](https://www.godaddy.com/help/manage-dns-records-680)
+ [Google Cloud DNS](https://cloud.google.com/dns/docs/records)
+ [Namecheap](https://www.namecheap.com/support/knowledgebase/article.aspx/767/10/how-to-change-dns-for-a-domain/)

## Considerações sobre domínio (locatário da distribuição)
<a name="tenant-domain-considerations"></a>

Quando um domínio está ativo, o controle do domínio foi estabelecido e o CloudFront responderá a todas as solicitações do visualizador a esse domínio. Depois de ativado, um domínio não pode ser desativado ou alterado para o status inativo. O domínio não poderá ser associado a outro recurso do CloudFront enquanto estiver em uso. Para associar o domínio a outra distribuição, use a solicitação [UpdateDomainAssociation](https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_UpdateDomainAssociation.html) para mover o domínio de um recurso do CloudFront para outro.

Quando um domínio estiver inativo, o CloudFront não responderá às solicitações do visualizador ao domínio. Enquanto o domínio estiver inativo, observe o seguinte:
+ Se houver uma solicitação de certificado pendente, o CloudFront responderá às solicitações do caminho conhecido. Enquanto a solicitação estiver pendente, o domínio não poderá ser associado a nenhum outro recurso do CloudFront.
+ Se você não tiver uma solicitação de certificado pendente, o CloudFront responderá às solicitações para o domínio. Você pode associar o domínio a outros recursos do CloudFront.
+ Você pode ter somente *uma solicitação de certificado pendente* por locatário de distribuição. Cancele a solicitação pendente antes de solicitar outro certificado para domínios adicionais. Cancelar uma solicitação de certificado não exclui o certificado do ACM correspondente. Você pode excluí-lo usando a API do ACM.
+ Se você aplicar um novo certificado ao locatário da distribuição, o certificado anterior será desassociado. Você pode reutilizar o certificado para abranger o domínio de outro locatário de distribuição.

Assim como ocorre com as renovações de certificados validados por DNS, você receberá uma notificação quando a renovação do certificado for bem-sucedida. Você não precisa fazer nada. O CloudFront gerenciará automaticamente a renovação do certificado do seu domínio.

**nota**  
Não é necessário chamar as operações de API do ACM para criar ou atualizar seus recursos de certificado. Você pode gerenciar os certificados usando as operações de API [CreateDistributionTenant](https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_CreateDistributionTenant.html) e [UpdateDistributionTenant](https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_UpdateDistributionTenant.html) para especificar os detalhes da sua solicitação de certificado gerenciado. 

## Domínios curinga (locatário de distribuição)
<a name="tenant-wildcard-domains"></a>

Os domínios curinga são compatíveis com locatários de distribuição nas seguintes situações:
+ Quando o caractere curinga é incluído no certificado compartilhado herdado da distribuição principal de vários inquilinos
+ Quando você usa um certificado TLS personalizado existente válido para seu inquilino de distribuição

# Criar grupo de conexões personalizado (opcional)
<a name="custom-connection-group"></a>

Por padrão, o CloudFront cria um grupo de conexões quando você cria uma distribuição multilocatário. O grupo de conexões controla como as solicitações de conteúdo do visualizador se conectam ao CloudFront.

Recomendamos que você use o grupo de conexões padrão. No entanto, se precisar isolar aplicações empresariais ou gerenciar grupos de locatários de distribuição separadamente, você poderá optar por criar um grupo de conexões personalizado. Por exemplo, talvez seja necessário mover um locatário da distribuição para um grupo de conexões separado se ele sofrer um ataque de DDoS. Dessa forma, você pode proteger outros locatários da distribuição contra impactos.

## Criar grupo de conexões personalizado (opcional)
<a name="create-connection-group"></a>

Opcionalmente, você pode escolher criar um grupo de conexões personalizado para os locatários da distribuição.

**Como criar um grupo de conexões personalizado (opcional)**

1. Faça login no Console de gerenciamento da AWS e abra o console do CloudFront em [https://console.aws.amazon.com/cloudfront/v4/home](https://console.aws.amazon.com/cloudfront/v4/home).

1. No painel de navegação, selecione **Configurações**.

1. Ative as configurações de **Grupo de conexões**.

1. No painel de navegação, escolha **Grupos de conexões** e **Criar grupo de conexões**.

1. Em **Nome do grupo de conexões**, insira um nome para o grupo. Não é possível atualizar esse nome depois que o grupo de conexões é criado.

1. Em **IPv6**, especifique se você deseja habilitar esse IP. Para obter mais informações, consulte [Habilitar IPv6 (solicitações do visualizador)](DownloadDistValuesGeneral.md#DownloadDistValuesEnableIPv6).

1. Em **Lista de IPs estáticos anycast**, especifique se deseja fornecer tráfego aos locatários da distribuição com base em um conjunto de endereços IP. Para ter mais informações, consulte [Lista de IPs estáticos anycast](request-static-ips.md).

1. (Opcional) Adicione tags ao grupo de conexões.

1. Escolha **Criar grupo de conexões**.

Você pode encontrar as configurações especificadas e também o ARN e o endpoint ao criar o grupo de conexões.
+ O ARN é semelhante ao seguinte exemplo: `arn:aws:cloudfront::123456789012:connection-group/cg_2uVbA9KeWaADTbKzhj9lcKDoM25`.
+ O endpoint é semelhante ao seguinte exemplo: d111111abcdef8.cloudfront.net.

Você pode editar ou excluir o grupo de conexões personalizado depois de criá-lo. Antes de excluir um grupo de conexões, exclua todos os locatários da distribuição associados a ele. Não é possível excluir o grupo de conexões padrão que o CloudFront criou quando você criou sua distribuição multilocatário.

**Importante**  
Se você alterar o grupo de conexões de um locatário da distribuição, o CloudFront continuará a transportar tráfego para esse locatário, mas com maior latência. Recomendamos atualizar o registro de DNS desse locatário para usar o endpoint de roteamento do CloudFront do novo grupo de conexões.  
Enquanto você não atualizar o registro de DNS, o CloudFront fará o roteamento com base nas configurações definidas do endpoint de roteamento para o qual o site está apontando no momento com o DNS. Por exemplo, suponha que o grupo de conexões padrão não use IPs estáticos anycast, mas o novo grupo de conexões personalizado use. Será necessário atualizar o registro de DNS para que o CloudFront use IPs estáticos anycast para os locatários da distribuição no grupo de conexões personalizado.

# Migrar uma distribuição multilocatário
<a name="template-migrate-distribution"></a>

Se você tiver uma distribuição padrão do CloudFront e quiser migrar para uma distribuição multilocatário, siga as etapas abaixo.

**Como migrar de uma distribuição padrão para uma distribuição multilocatário**

1. Revise as [Atributos não compatíveis](distribution-config-options.md#unsupported-saas).

1. Crie uma distribuição multilocatário com a mesma configuração da sua distribuição padrão, menos os recursos não compatíveis. Para obter mais informações, consulte [Criar uma distribuição do CloudFront no console](distribution-web-creating-console.md#create-console-distribution).

1. Crie um locatário de distribuição e adicione um nome de domínio alternativo pertencente a você.
**Atenção**  
*Não* use o nome de domínio atual associado à sua distribuição padrão. Em vez disso, adicione um domínio de espaço reservado. Você transferirá seu domínio posteriormente. Para ter informações sobre como criar um locatário de distribuição, consulte [Criar uma distribuição do CloudFront no console](distribution-web-creating-console.md#create-console-distribution).

1. Forneça um certificado existente para o domínio do locatário de distribuição. Este é o certificado que cobrirá o domínio de espaço reservado e o domínio que você deseja mover.

1. Copie o endpoint de roteamento do CloudFront da página de detalhes de locatários de distribuição no console. Também é possível encontrá-lo usando a ação de API [ListConnectionGroups](https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_ListConnectionGroups.html) na *Referência de API do Amazon CloudFront*.

1. Para verificar a propriedade do domínio, crie um registro DCV TXT com um prefixo de sublinhado ( \$1 ) que aponte para o endpoint de roteamento do CloudFront para seu locatário de distribuição. Para obter mais informações, consulte [Apontar domínios para o CloudFront](managed-cloudfront-certificates.md#point-domains-to-cloudfront).

1. Quando suas alterações forem propagadas, atualize o locatário da distribuição para usar o domínio que você usou anteriormente para a distribuição padrão. 
   + **Console**: para obter instruções, consulte [Adicionar um domínio e um certificado (locatário da distribuição)](managed-cloudfront-certificates.md#vanity-domain-tls-tenant).
   + **API**: use a ação de API [UpdateDomainAssociation](https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_UpdateDomainAssociation.html) na *Referência de API do Amazon CloudFront*.
**Importante**  
Isso redefine a chave de cache do seu conteúdo. Depois disso, o CloudFront começa a armazenar seu conteúdo em cache usando a nova chave de cache. Para obter mais informações, consulte [Noções básicas sobre a chave de cache](understanding-the-cache-key.md).

1. Atualize seu registro DNS para apontar para seu domínio para o endpoint de roteamento do CloudFront do locatário da distribuição. Depois de concluir essa etapa, seu domínio estará pronto para servir tráfego para o seu locatário de distribuição. Para obter mais informações, consulte [Apontar domínios para o CloudFront](managed-cloudfront-certificates.md#point-domains-to-cloudfront).

1. (Opcional) Depois de migrar com sucesso seu domínio para um locatário de distribuição, você pode usar um certificado gerenciado diferente do CloudFront que cubra o nome de domínio do seu locatário de distribuição. Para solicitar um certificado gerenciado, crie um registro TXT separado para emitir o certificado e siga as etapas aqui em [Concluir configuração do domínio](managed-cloudfront-certificates.md#complete-domain-ownership).

# Criar uma distribuição
<a name="distribution-web-creating-console"></a>

O procedimento a seguir explica como usar o console do CloudFront para criar uma distribuição.<a name="create-download-distribution-task-list"></a>

**Visão geral**

1. Crie um ou mais buckets do Amazon S3 ou configure servidores HTTP como seus servidores de origem. *Origem* é o local de armazenamento da versão original do conteúdo. Quando o CloudFront recebe uma solicitação dos seus arquivos, ele acessa a origem para obter os arquivos que distribui nos pontos de presença. É possível usar qualquer combinação de buckets do Amazon S3 e servidores HTTP como seus servidores de origem.
   + Se você estiver usando o Amazon S3, o nome do bucket deverá ser composto por letras minúsculas e não poderá conter espaços.
   + Se você usar um servidor do Amazon EC2 ou outra origem personalizada, consulte [Usar o Amazon EC2 (ou outra origem personalizada)](DownloadDistS3AndCustomOrigins.md#concept_CustomOrigin).
   + Para obter o número máximo atual de origens que você pode criar para uma distribuição ou para solicitar uma cota maior, consulte [Cotas gerais para distribuições](cloudfront-limits.md#limits-web-distributions).

1. Faça upload do conteúdo nos seus servidores de origem. É possível tornar os objetos legíveis pelo público em geral ou usar URLs assinados do CloudFront para restringir o acesso ao conteúdo. 
**Importante**  
Você é responsável por garantir a segurança do seu servidor de origem. É necessário garantir que o CloudFront tenha permissão para acessar o servidor e que as configurações de segurança protejam o conteúdo.

1. Crie sua distribuição do CloudFront:
   + Para ler um procedimento detalhado que cria uma distribuição no console do CloudFront, consulte [Criar uma distribuição do CloudFront no console](#create-console-distribution).
   + Para ter informações sobre como criar uma distribuição usando a API do CloudFront, consulte [CreateDistribution](https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_CreateDistribution.html) na *Referência da API do Amazon CloudFront*.

1. (Opcional) Se você usar o console do CloudFront para criar a distribuição, crie mais comportamentos de cache ou origens para ela. Para obter mais informações sobre comportamentos e origens, consulte [Como atualizar uma distribuição multilocatário](HowToUpdateDistribution.md#HowToUpdateDistributionProcedure).

1. Teste sua distribuição. Para ter mais informações sobre armazenamento, consulte [Testar uma distribuição](distribution-web-testing.md).

1. Desenvolva seu site ou aplicação para acessar seu conteúdo usando o nome de domínio retornado pelo CloudFront depois de criar a distribuição na Etapa 3. Por exemplo, se o CloudFront exibir d111111abcdef8.cloudfront.net como o nome de domínio para a distribuição, o URL do arquivo `image.jpg` em um bucket do Amazon S3 ou no diretório raiz em um servidor HTTP será `https://d111111abcdef8.cloudfront.net/image.jpg`. 

   Se você especificou um ou mais nomes de domínio alternativos (CNAMEs) ao criar a distribuição, poderá usar seu próprio nome de domínio. Nesse caso, o URL de `image.jpg` pode ser `https://www.example.com/image.jpg`.

   Observe o seguinte:
   + Se você quiser usar signed URLs para restringir o acesso ao seu conteúdo, consulte [Veicular conteúdo privado com URLs e cookies assinados](PrivateContent.md). 
   + Se você quiser fornecer conteúdo compactado, consulte [Fornecer arquivos compactados](ServingCompressedFiles.md).
   + Para obter informações sobre o comportamento de solicitação e resposta do CloudFront para o Amazon S3 e origens personalizadas, consulte [Comportamento de solicitação e resposta](RequestAndResponseBehavior.md).

**Topics**
+ [Criar uma distribuição do CloudFront no console](#create-console-distribution)
+ [Valores que o CloudFront exibe no console](#distribution-web-values-returned)
+ [Links adicionais](#distribution-helpful-links)
+ [Adicione um domínio à sua distribuição padrão do CloudFront](add-domain-existing-distribution.md)

## Criar uma distribuição do CloudFront no console
<a name="create-console-distribution"></a>

Quando você cria uma distribuição, o CloudFront configura as configurações da distribuição para você com base no tipo de origem do conteúdo. Para ter mais informações sobre as configurações predefinidas, consulte [Referência de configurações de distribuição predefinidas](template-preconfigured-origin-settings.md). Também é possível criar distribuições multilocatário com configurações que podem ser reutilizadas em vários locatários de distribuição. Para obter mais informações, consulte [Noções básicas sobre as distribuições multilocatário](distribution-config-options.md). Outra opção é configurar manualmente suas configurações de distribuição.

------
#### [ Multi-tenant ]<a name="CreatingDownloadDistributionsConsoleProcedure"></a>

**Como criar uma distribuição multilocatário**

1. Faça login no Console de gerenciamento da AWS e abra o console do CloudFront em [https://console.aws.amazon.com/cloudfront/v4/home](https://console.aws.amazon.com/cloudfront/v4/home).

1. No painel de navegação, escolha **Distribuições** e **Criar distribuição**.

1. Escolha **Arquitetura multilocatário** e **Próximo**.

1. Insira um **nome da distribuição** para a distribuição multilocatário. O nome aparecerá como o valor da chave `Name`. Você pode alterar esse valor posteriormente. Você pode adicionar até cinquenta tags para uma distribuição multilocatário. Para ter mais informações, consulte [Marcar uma distribuição](tagging.md) .

1. (Opcional) Em **Certificado curinga**, escolha o certificado do AWS Certificate Manager (ACM) que abrangerá todos os subdomínios sob o domínio raiz, como *\$1.exemplo.com*. O certificado deve estar na região Leste dos EUA (Norte da Virgínia).

1. Escolha **Próximo**.

1. Na página **Especificar origem**, selecione o tipo de origem do qual o CloudFront obterá seu conteúdo. O CloudFront usará as configurações recomendadas para esse tipo de origem em sua distribuição multilocatário. Para ter mais informações sobre as configurações recomendadas, consulte [Referência de configurações de distribuição predefinidas](template-preconfigured-origin-settings.md).

1. Em **Origem**, no tipo de origem que você selecionou, escolha ou insira a origem a ser usada.

1. Em **Caminho de origem**, insira o caractere de barra (`/`), seguido do caminho de origem.

1. (Opcional) Para adicionar um parâmetro, escolha **Inserir parâmetro** para o nome do domínio de origem ou o caminho de origem. Você pode inserir até dois parâmetros para cada campo. 

   1. Escolha **Criar parâmetro**.

   1. Na caixa de diálogo **Criar parâmetro**, em **Nome do parâmetro**, insira um nome exclusivo para o parâmetro e, opcionalmente, uma descrição. 

   1. Em **Parâmetro obrigatório**, marque a caixa de seleção para tornar esse valor de parâmetro obrigatório no nível de locatário da distribuição. Se não for obrigatório, insira um **valor padrão** a ser herdado pelo locatário da distribuição.

   1. Escolha **Criar Parâmetro**. Esse parâmetro aparece no campo correspondente. 

1. Em **Opções**, escolha uma das seguintes opções:
   + **Usar configurações de origem recomendadas**: use as configurações padrão recomendadas de cache e origem para o tipo de origem que você selecionou.
   + **Personalizar as configurações de origem**: personalize as configurações de cache e origem. Se você escolher essa opção, especifique os valores personalizados que devem aparecer. 

1. Escolha **Próximo**.

1. Na página **Habilitar proteções de segurança**, escolha se deseja habilitar as proteções de segurança do AWS WAF. Você pode personalizar a ACL da web para locatários específicos da distribuição posteriormente. Para obter mais informações, consulte [Habilitar o AWS WAF para uma nova distribuição](WAF-one-click.md#enable-waf-new-distribution).

1. Escolha **Próximo** e **Criar distribuição**.

1. Na página **Distribuições**, a distribuição multilocatário aparece na lista de recursos. Você pode escolher o menu suspenso **Todas as distribuições** para filtrar por distribuição padrão ou distribuição multilocatário. Também é possível escolher a coluna **Tipo** para filtrar por distribuição padrão ou multilocatário.

Por padrão, o CloudFront cria um grupo de conexões para você. O grupo de conexões controla como as solicitações de conteúdo do visualizador se conectam ao CloudFront. É possível personalizar algumas configurações de roteamento no grupo de conexões. Para obter mais informações, consulte [Noções básicas sobre as distribuições multilocatário](distribution-config-options.md).

Você pode criar outros locatários de distribuição usando a distribuição multilocatário como modelo.

**Como criar um locatário de distribuição**

1. Faça login no Console de gerenciamento da AWS e abra o console do CloudFront em [https://console.aws.amazon.com/cloudfront/v4/home](https://console.aws.amazon.com/cloudfront/v4/home).

1. No painel de navegação, execute uma das seguintes opções:
   + Escolha **Distribuições**, selecione uma distribuição multilocatário e escolha **Criar locatário**.
   + Escolha **Criar distribuição** e selecione **Começar a usar**.

1. Em **Nome do locatário da distribuição**, insira o nome. O nome deve ser exclusivo em sua Conta da AWS e, depois de criado, não pode ser alterado.

1. Em **Distribuição de modelo**, escolha um ID de distribuição multilocatário na lista.

1. Em **Gerenciar tags**, adicione até cinquenta pares de chave-valor para o locatário da distribuição. Para obter mais informações, consulte [Marcar uma distribuição](tagging.md). ****

1. Escolha **Próximo**.

1. Na página **Adicionar domínios**, em **Certificado**, escolha se você deseja um **certificado TLS personalizado** para o locatário da distribuição. O certificado verifica se você tem autorização para usar o nome de domínio. Você deve importar o certificado na região Leste dos EUA (Norte da Virgínia).

1. Em **Domínios**, insira um nome de domínio. 
**nota**  
Se você tiver inserido um nome de domínio que não seja coberto por um certificado, será preciso verificar se esse domínio pertence a você. Ainda assim, você pode criar o locatário da distribuição nesse momento e verificar a propriedade do domínio posteriormente. Para obter mais informações, consulte [Solicitar certificados para locatários de distribuição do CloudFront](managed-cloudfront-certificates.md).

1. Escolha **Próximo**.

1. Na página **Definir parâmetros**, aparecem os parâmetros que você especificou na distribuição multilocatário. Para os parâmetros obrigatórios, insira um valor ao lado do nome do parâmetro e salve as alterações.

1. Para adicionar outro parâmetro, escolha **Adicionar parâmetro** e insira um nome e um valor.

1. Escolha **Próximo**.

1. (Opcional) Em **Personalização de segurança**, se você marcar **Substituir as configurações da distribuição**, selecione a opção para seu caso de uso.

1. (Opcional) Em **Personalização de restrições geográficas**, se você marcar **Substituir as configurações da distribuição**, selecione o **tipo de restrição** e os **países** apropriados para o locatário da distribuição. Para obter mais informações, consulte [Restringir a distribuição geográfica do conteúdo](georestrictions.md).

1. Escolha **Próximo**.

1. Escolha **Criar locatário de distribuição**.

É possível encontrar todos os locatários da distribuição na página **Locatários da distribuição**. Você pode filtrar por:

**Associação**
+ ID de distribuição
+ ID do certificado
+ ID do grupo de conexões
+ ID da ACL da Web

**Propriedades**
+ Nome
+ Domínio

É possível editar os locatários da distribuição para personalizar configurações específicas. Para obter mais informações, consulte [Personalizações de locatários da distribuição](tenant-customization.md).

------
#### [ Standard ]

**Como criar uma distribuição padrão**

1. Faça login no Console de gerenciamento da AWS e abra o console do CloudFront em [https://console.aws.amazon.com/cloudfront/v4/home](https://console.aws.amazon.com/cloudfront/v4/home).

1. No painel de navegação, escolha **Distribuições** e **Criar distribuição**.

1. Insira um **nome da distribuição** para a distribuição padrão. O nome aparecerá como o valor da chave `Name` como uma marcação. Você pode alterar esse valor posteriormente. Você pode adicionar até cinquenta tags para uma distribuição padrão. Para obter mais informações, consulte [Marcar uma distribuição](tagging.md).

1. Escolha **Site ou aplicativo único**, **Avançar**.

1. (Opcional) Para **Configuração de domínio**, insira um domínio que já esteja registrado no Route 53 em sua Conta da AWS, ou registre um novo domínio. Conclua as etapas de configuração.
   + Se seu domínio usa um provedor de DNS diferente do Route 53, você ainda pode adicionar o domínio, mas precisará fazer isso depois de criar a distribuição. Pule a configuração do domínio por enquanto para prosseguir com a criação da distribuição. Você deve configurar manualmente o domínio e o certificado TLS posteriormente. Para obter mais informações, consulte [Adicione um domínio à sua distribuição padrão do CloudFront](add-domain-existing-distribution.md).

1. Escolha **Próximo**.

1. Na página **Especificar origem**, selecione o tipo de origem do qual o CloudFront obterá seu conteúdo. O CloudFront usará as configurações recomendadas para esse tipo de origem em sua distribuição. Para ter mais informações sobre as configurações recomendadas, consulte [Referência de configurações de distribuição predefinidas](template-preconfigured-origin-settings.md).

1. Para **Origem**, escolha ou insira sua origem.

1. Para **Configurações**, selecione uma das seguintes opções:
   + **Usar configurações de origem recomendadas**: use as configurações padrão recomendadas de cache e origem para o tipo de origem que você selecionou.
   + **Personalizar as configurações de origem**: personalize as configurações de cache e origem. Se você escolher essa opção, especifique seus próprios valores. 

1. Escolha **Próximo**.

1. Na página **Habilitar proteções de segurança**, escolha se deseja habilitar as proteções de segurança do AWS WAF.

1. Escolha **Próximo**.

1. (Opcional) Se você estiver usando o Route 53 para seu domínio, verá a página **Certificado TLS**. Se o CloudFront não conseguir encontrar um certificado AWS Certificate Manager (ACM) existente para seu domínio na sua Conta da AWS na Região da AWS `us-east-1`, você pode optar por criar automaticamente um certificado ou criá-lo manualmente. Depois que o certificado for criado, escolha **Avançar**.

1. Revise os detalhes da distribuição e escolha **Criar distribuição**.

1. Depois que o CloudFront criar a sua distribuição, o valor da coluna **Status** da sua distribuição será alterado de **Deploying** (Implantando) para a hora e a hora em que a distribuição foi implantada.

   O nome de domínio que o CloudFront atribuir à sua distribuição será exibido na lista de distribuições. (Ele também é exibido na guia **Geral** de uma distribuição selecionada.) 
**dica**  
É possível usar um nome de domínio alternativo, em vez do nome atribuído a você pelo CloudFront, seguindo as etapas em [Usar URLs personalizados adicionando nomes de domínio alternativos (CNAMEs)](CNAMEs.md).

1. Quando a distribuição for implantada, confirme se é possível acessar seu conteúdo usando o novo URL do CloudFront (d111111abcdef8.cloudfront.net) ou o CNAME. Para obter mais informações, consulte [Testar uma distribuição](distribution-web-testing.md).

1. Atualize seus registros DNS para apontar para o CloudFront quando estiver pronto para enviar tráfego para sua distribuição. Para obter mais informações, consulte [Apontar domínios para o CloudFront (distribuição padrão)](add-domain-existing-distribution.md#point-domains-standard).

------

## Valores que o CloudFront exibe no console
<a name="distribution-web-values-returned"></a>

Ao criar uma distribuição ou atualizar uma distribuição existente, o CloudFront exibe as informações abaixo no console do CloudFront.

**nota**  
Os assinantes confiáveis ativos, as Contas da AWS com um par de chaves ativo do CloudFront e que podem ser usadas para criar signed URLs válidos, não estão visíveis no console do CloudFront no momento.

### Distribution ID (ID de distribuição)
<a name="DownloadDistReturnID"></a>

Ao executar uma ação em uma distribuição usando a API do CloudFront, use o ID de distribuição para especificar qual distribuição será usada, por exemplo, `EDFDVBD6EXAMPLE`. Você não pode alterar o ID de distribuição de uma distribuição.

### Implantação e status
<a name="DownloadDistReturnStatus"></a>

Enquanto a distribuição estiver sendo implantada, o status **Deploying** (Implantando) na coluna **Last modified** (Última modificação) é exibido. Aguarde até que a distribuição termine a implantação e certifique-se de que a coluna **Status** mostre **Enabled** (Habilitado). Para obter mais informações, consulte [Estado de distribuição](DownloadDistValuesGeneral.md#DownloadDistValuesEnabled).

### Last modified (Última modificação)
<a name="DownloadDistReturnLastModDate"></a>

A data e a hora em que a distribuição foi modificada pela última vez, usando o formato ISO 8601, por exemplo, 2012-05-19T19:37:58Z. Para obter mais informações, consulte [https://www.w3.org/TR/NOTE-datetime](https://www.w3.org/TR/NOTE-datetime).

### Nome de domínio
<a name="DownloadDistReturnDomainName"></a>

Você usa o nome de domínio da distribuição nos links dos seus objetos. Por exemplo, se o nome do domínio da sua distribuição for `d111111abcdef8.cloudfront.net`, o link de `/images/image.jpg` será `https://d111111abcdef8.cloudfront.net/images/image.jpg`. Não é possível alterar o nome de domínio do CloudFront da sua distribuição. Para mais informações sobre URLs do CloudFront de links dos seus objetos, consulte [Personalizar o formato do URL para arquivos no CloudFront](LinkFormat.md).

Se você especificar um ou mais nomes de domínio alternativos (CNAMEs), poderá usar seus próprios nomes de domínio nos links para seus objetos, em vez de usar o nome de domínio do CloudFront. Para obter mais informações sobre os CNAMEs, consulte [Nomes de domínio alternativos (CNAMEs)](DownloadDistValuesGeneral.md#DownloadDistValuesCNAME). 

**nota**  
Os nomes de domínio do CloudFront são exclusivos. O nome de domínio da sua distribuição nunca foi usado por uma distribuição anterior e não será reutilizado por outra distribuição no futuro.

## Links adicionais
<a name="distribution-helpful-links"></a>

Para ter mais informações sobre como criar uma distribuição, consulte os links a seguir.
+ Para saber como criar uma distribuição que usa uma origem de bucket do Amazon Simple Storage Service (Amazon S3) com controle de acesso à origem (OAC), consulte [Conceitos básicos de uma distribuição padrão do CloudFront](GettingStarted.SimpleDistribution.md).
+ Para ter informações sobre como usar APIs do CloudFront para criar uma distribuição, consulte [CreateDistribution](https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_CreateDistribution.html) na *Referência da API do Amazon CloudFront*.
+ Para obter informações sobre como atualizar uma distribuição (por exemplo, para adicionar comportamentos de cache a distribuições padrão ou personalizar locatários de distribuição), consulte [Atualizar uma distribuição](HowToUpdateDistribution.md).
+ Para ver o número máximo atual de distribuições que você pode criar para cada conta da AWS ou para solicitar uma cota maior (anteriormente conhecida como limite), consulte [Cotas gerais para distribuições](cloudfront-limits.md#limits-web-distributions).

# Adicione um domínio à sua distribuição padrão do CloudFront
<a name="add-domain-existing-distribution"></a>

Depois de criar uma nova distribuição padrão do CloudFront, você pode adicionar um domínio a ela. Opcionalmente, você pode configurar um domínio do Amazon Route 53 para sua distribuição padrão ao criá-la. Para obter mais informações, consulte [Criar uma distribuição do CloudFront no console](distribution-web-creating-console.md#create-console-distribution).

## Adicione um domínio à sua distribuição padrão existente
<a name="add-domain-standard"></a>

**Para adicionar um domínio à sua distribuição padrão**

1. Faça login no Console de gerenciamento da AWS e abra o console do CloudFront em [https://console.aws.amazon.com/cloudfront/v4/home](https://console.aws.amazon.com/cloudfront/v4/home).

1. No painel de navegação, escolha **Distribuições** e escolha a ID da distribuição.

1. Em **Configurações**, **Nomes de domínio alternativos**, escolha **Adicionar um domínio**.

1. Insira até cinco domínios para servir.

1. Escolha **Próximo**.

1. Para o **certificado TLS**, se o CloudFront não conseguir encontrar um certificado (ACM) AWS Certificate Manager existente para seu domínio na sua Conta da AWS na Região da AWS `us-east-1`, você poderá criar um.
   + Se você estiver usando o Amazon Route 53 (Route 53), o CloudFront cria automaticamente um certificado para você.

1. Quando seu certificado for provisionado, você deverá atualizar seus registros de DNS com seu provedor de DNS para provar a propriedade do domínio. Em seguida, escolha **Validar certificado**. Para obter mais informações, consulte [Apontar domínios para o CloudFront (distribuição padrão)](#point-domains-standard).
   + Se você estiver usando o Route 53, o CloudFront atualiza seus registros de DNS para você.

1. Escolha **Próximo**.

1. Revise suas alterações e escolha **Adicionar domínios**.

1. Antes de enviar tráfego para sua distribuição, atualize seus registros DNS para apontar para o CloudFront. Para obter mais informações, escolha **Encaminhar domínios para o CloudFront** na seção **Configurações** da sua página de detalhes de distribuição.
   + Se você estiver usando o Route 53, você pode fazer o CloudFront configurar o roteamento de DNS para você automaticamente.

## Apontar domínios para o CloudFront (distribuição padrão)
<a name="point-domains-standard"></a>

Atualize os registros de DNS para rotear o tráfego de cada domínio para o nome de host do CloudFront. Você pode ter vários nomes de domínio, mas eles devem ser resolvidos nesse nome de host.

**Como apontar domínios para o CloudFront**

1. Copie o valor do nome de host do CloudFront; por exemplo, d111111abcdef8.cloudfront.net.

1. Atualize os registros de DNS para rotear o tráfego de cada domínio para o nome de host do CloudFront.

   1. Faça login no registrador de domínio ou no console de gerenciamento do provedor de DNS.

   1. Acesse a seção de gerenciamento de DNS do seu domínio.
      + **Para subdomínios**: crie um registro CNAME. Por exemplo:
        + **Nome**: seu subdomínio (como `www` ou `app`).
        + **Valor/Destino**: seu nome de host do CloudFront
        + **Tipo de registro**: CNAME.
        + **TTL**: 3.600 (ou o que for apropriado para seu caso de uso).
      + **Para domínios apex/raiz**: isso requer uma configuração de DNS exclusiva, porque os registros CNAME padrão não podem ser usados no nível do domínio raiz ou apex. Como a maioria dos provedores de DNS não oferece suporte a registros ALIAS, recomendamos criar um registro ALIAS no Route 53. Por exemplo:
        + **Nome**: o domínio ápex (como `example.com`).
        + **Tipo de registro**: A.
        + **Alias**: sim.
        + **Destino do alias**: seu nome de host do CloudFront
        + **Política de roteamento**: simples (ou o que for apropriado para seu caso de uso).

   1. Verifique se a alteração de DNS foi propagada. (Isso geralmente acontece quando o TTL expira. Às vezes, pode levar de 24 a 48 horas.) Use uma ferramenta, como `dig` ou `nslookup`.

      ```
      dig www.example.com
      # Should eventually return a CNAME pointing to your CloudFront hostname
      ```

1. Retorne ao console do CloudFront e escolha **Enviar**. Quando o domínio estiver ativo, o CloudFront atualizará o respectivo status para indicar que o domínio está pronto para atender ao tráfego.

Para obter mais informações, consulte a documentação do seu provedor de DNS:
+ [Cloudflare](https://developers.cloudflare.com/dns/manage-dns-records/how-to/create-dns-records/)
+ [ClouDNS](https://www.cloudns.net/wiki/article/9/)
+ [DNSimple](https://support.dnsimple.com/categories/dns/)
+ [Gandi.net](https://www.gandi.net/)
+ [GoDaddy](https://www.godaddy.com/help/manage-dns-records-680)
+ [Google Cloud DNS](https://cloud.google.com/dns/docs/records)
+ [Namecheap](https://www.namecheap.com/support/knowledgebase/article.aspx/767/10/how-to-change-dns-for-a-domain/)

# Referência de configurações de distribuição predefinidas
<a name="template-preconfigured-origin-settings"></a>

Quando você cria uma distribuição do CloudFront, o CloudFront define automaticamente a maior parte das configurações da distribuição para você com base no tipo de origem do conteúdo. Opcionalmente, você pode editar manualmente suas configurações de distribuição. Para obter mais informações, consulte [Referência de configurações de todas as distribuições](distribution-web-values-specify.md).

As seções a seguir descrevem as configurações predefinidas padrão para distribuições e as configurações que você pode personalizar.

## Origem do Amazon S3
<a name="s3-origin-preconfiguration"></a>

A seguir estão as configurações de origem que o CloudFront define previamente para a origem do Amazon S3 em uma distribuição multilocatário.

**Configurações de origem (predefinidas)**
+ **Controle de acesso à origem (somente no console)**: o CloudFront configura o OAC para você. O CloudFront tenta adicionar a política de bucket do S3 para distribuições padrão e multilocatário sem parâmetros usadas no domínio de origem.
+ **Adicionar cabeçalho personalizado**: nenhum.
+ **Habilitar o Origin Shield**: não.
+ **Tentativas de conexão** – 3

A seguir estão as configurações de cache que o CloudFront define previamente para a origem do Amazon S3 em uma distribuição multilocatário.

**Configurações de cache (predefinidas)**
+ **Compactar objetos automaticamente**: sim.
+ **Política de protocolo do visualizador**: redirecionar para HTTPS.
+ **Métodos HTTP permitidos** – `GET, HEAD`
+ **Restringir acesso ao visualizador**: não.
+ **Política de cache** – `CachingOptimized`
+ **Política de solicitação de origem**: nenhuma.
+ **Política de cabeçalho de resposta**: nenhuma.
+ **Smooth Streaming**: não.
+ **Criptografia no nível de campo**: não.
+ **Habilitar logs de acesso em tempo real**: não.
+ **Funções**: não.

A seguir estão as configurações que você pode personalizar para a origem do Amazon S3 em uma distribuição multilocatário.

**Configurações personalizáveis**
+ **Acesso ao S3**: o CloudFront define isso para você com base nas configurações do bucket do S3:
  + **Se o bucket for público**: nenhuma política de controle de acesso à Origem (OAC) é necessária.
  + **Se o bucket for privado**: você pode escolher ou criar uma política de OAC para usar.
+ **Habilitar o Origin Shield**: não.
+ **Compactar objetos automaticamente**: sim.
  + Se você escolher **Sim**, a política de cache `CachingOptimized` será usada.
  + Se você escolher **Não**, a política de cache `CachingOptimizedForUncompressedObjects` será usada.

## Origem do API Gateway
<a name="api-gateway-origin-preconfiguration"></a>

A seguir estão as configurações de origem que o CloudFront define previamente para a origem do API Gateway em uma distribuição multilocatário.

**Configurações de origem (predefinidas)**
+ **Protocolo**: somente HTTPS.
+ **Porta HTTPS** – 443
+ **Protocolo SSL de origem mínimo**: TLSv1.2.
+ **Caminho de origem**: nenhum.
+ **Controle de acesso à origem (somente no console)**: o CloudFront configura o OAC para você.
+ **Adicionar cabeçalho personalizado**: nenhum.
+ **Habilitar o Origin Shield**: não.
+ **Tentativas de conexão** – 3
+ **Tempo limite de resposta** – 30
+ **Tempo limite do keep alive** – 5

A seguir estão as configurações de cache que o CloudFront define previamente para a origem do API Gateway em uma distribuição multilocatário.

**Configurações de cache (predefinidas)**
+ **Compactar objetos automaticamente**: sim.
+ **Política de protocolo do visualizador**: redirecionar para HTTPS.
+ **Métodos HTTP permitidos** – `GET, HEAD, OPTIONS, PUT, POST, PATCH, DELETE`
+ **Métodos HTTP de cache**: não.
+ **Permitir solicitações gRPC por HTTP/2**: não.
+ **Restringir acesso ao visualizador**: não.
+ **Política de cache**: `CachingDisabled` (Valores possíveis: `UseOriginCacheControlHeaders` e `UseOriginCacheControlHeaders-QueryStrings`).
+ **Política de solicitação de origem**: `AllViewerExceptHostHeader` (valores possíveis: `AllViewer` e `AllViewerandCloudFrontHeaders-2022-06`).
+ **Política de cabeçalho de resposta**: nenhuma.
+ **Smooth Streaming**: não.
+ **Criptografia no nível de campo**: não.
+ **Habilitar logs de acesso em tempo real**: não.
+ **Funções**: não.

A seguir estão as configurações que você pode personalizar para a origem do API Gateway em uma distribuição multilocatário.

**Configurações personalizáveis**
+ **Habilitar o Origin Shield**: (padrão: não).
+ **Compactar objetos automaticamente**: (padrão: sim).

## Origem e instância do EC2 personalizadas
<a name="custom-ec2-origin-preconfiguration"></a>

A seguir estão as configurações de origem que o CloudFront define previamente para sua origem personalizada em uma distribuição multilocatário.

**Configurações de origem (predefinidas)**
+ **Protocolo**: corresponder ao visualizador.
+ **Porta HTTP** – 80
+ **Porta HTTPS** – 443
+ **Protocolo SSL de origem mínimo**: TLSv1.2.
+ **Caminho de origem**: nenhum.
+ **Adicionar cabeçalho personalizado**: nenhum.
+ **Habilitar o Origin Shield**: não.
+ **Tentativas de conexão** – 3
+ **Tempo limite de resposta** – 30
+ **Tempo limite do keep alive** – 5

A seguir estão as configurações de cache que o CloudFront define previamente para sua origem e instância do EC2 personalizadas em uma distribuição multilocatário.

**Configurações de cache (predefinidas)**
+ **Compactar objetos automaticamente**: sim.
+ **Política de protocolo do visualizador**: redirecionar para HTTPS.
+ **Métodos HTTP permitidos** – `GET, HEAD, OPTIONS, PUT, POST, PATCH, DELETE`
+ **Métodos HTTP de cache**: não.
+ **Permitir solicitações gRPC por HTTP/2**: não.
+ **Restringir acesso ao visualizador**: não.
+ **Política de cache**: `UseOriginCacheControlHeaders` (valores possíveis: `UseOriginCacheControlHeaders-QueryStrings`, `CachingDisabled`, `CacheOptimized` e `CachingOptimizedForUncompressedObjects`).
+ **Política de solicitação de origem**: `AllViewer` (valores possíveis: `AllViewerExceptHostHeader` e `AllViewerandCloudFrontHeaders-2022-06`).
+ **Política de cabeçalho de resposta**: nenhuma.
+ **Smooth Streaming**: não.
+ **Criptografia no nível de campo**: não.
+ **Habilitar logs de acesso em tempo real**: não.
+ **Funções**: não.

A seguir estão as configurações que você pode personalizar para uma origem e instância do EC2 personalizadas em uma distribuição multilocatário.

**Configurações personalizáveis**
+ **Habilitar o Origin Shield**: (padrão: não).
+ **Compactar objetos automaticamente**: (padrão: sim).
+ **Cache**: (padrão: `Cache by Default`).
  + Se `Cache by Default` for selecionada, a política de cache `UseOriginCacheControlHeaders` será usada.
  + Se `Do Not Cache by Default` for selecionada, a política de cache `CachingDisabled` será usada.
+ **Incluir string de consulta no cache**: (padrão: sim, se `Cache by Default` já estiver selecionada).
  + Se `Do Not Cache by Default` já estiver selecionada e você optar por incluir a string de consulta no cache, a política de cache `UseOriginCacheControlHeaders-QueryStrings` será usada.

## Origem do Elastic Load Balancing
<a name="elb-origin-preconfiguration"></a>

A seguir estão as configurações de origem que o CloudFront define previamente para a origem do Elastic Load Balancing em uma distribuição multilocatário.

**Configurações de origem (predefinidas)**
+ **Protocolo**: somente HTTPS.
+ **Porta HTTPS** – 443
+ **Protocolo SSL de origem mínimo**: TLSv1.2.
+ **Caminho de origem**: nenhum.
+ **Adicionar cabeçalho personalizado**: nenhum.
+ **Habilitar o Origin Shield**: não.
+ **Tentativas de conexão** – 3
+ **Tempo limite de resposta** – 30
+ **Tempo limite do keep alive** – 5

A seguir estão as configurações de cache que o CloudFront define previamente para a origem do Elastic Load Balancing em uma distribuição multilocatário.

**Configurações de cache (predefinidas)**
+ **Compactar objetos automaticamente**: sim.
+ **Política de protocolo do visualizador**: redirecionar para HTTPS.
+ **Métodos HTTP permitidos** – `GET, HEAD, OPTIONS, PUT, POST, PATCH, DELETE`
+ **Métodos HTTP de cache**: não.
+ **Permitir solicitações gRPC por HTTP/2**: não.
+ **Restringir acesso ao visualizador**: não.
+ **Cache**: (padrão: `Cache by Default`).
  + Se `Cache by Default` for selecionada, a política de cache `UseOriginCacheControlHeaders` será usada.
  + Se `Do Not Cache by Default` for selecionada, a política de cache `CachingDisabled` será usada.
+ **Incluir string de consulta no cache**: (padrão: sim, se `Cache by Default` já estiver selecionada).
  + Se `Do Not Cache by Default` já estiver selecionada e você optar por incluir a string de consulta no cache, a política de cache `UseOriginCacheControlHeaders-QueryStrings` será usada.
+ **Política de solicitação de origem**: `All Viewer` (valores possíveis: `AllViewerExceptHostHeader` e `AllViewerandCloudFrontHeaders-2022-06`).
+ **Política de cabeçalho de resposta**: nenhuma.
+ **Smooth Streaming**: não.
+ **Criptografia no nível de campo**: não.
+ **Habilitar logs de acesso em tempo real**: não.
+ **Funções**: não.

A seguir estão as configurações que você pode personalizar para a origem do Elastic Load Balancing em uma distribuição multilocatário.

**Configurações personalizáveis**
+ **Habilitar o Origin Shield**: (padrão: não).
+ **Compactar objetos automaticamente**: (padrão: sim).
+ **Cache**: (padrão: `Cache by Default`).
  + Se `Cache by Default` for selecionada, a política de cache `UseOriginCacheControlHeaders` será usada.
  + Se `Do Not Cache by Default` for selecionada, a política de cache `CachingDisabled` será usada.
+ **Incluir string de consulta no cache**: (padrão: sim, se `Cache by Default` já estiver selecionada).
  + Se `Do Not Cache by Default` já estiver selecionada e você optar por incluir a string de consulta no cache, a política de cache `UseOriginCacheControlHeaders-QueryStrings` será usada.

## Origem do MediaPackage v1
<a name="media-package-v1-origin-preconfiguration"></a>

A seguir estão as configurações de origem que o CloudFront define previamente para a origem do MediaPackage v1 em uma distribuição multilocatário.

**Configurações de origem (predefinidas)**
+ **Protocolo**: somente HTTPS.
+ **Porta HTTPS** – 443
+ **Protocolo SSL de origem mínimo**: TLSv1.2.
+ **Caminho de origem**: você o fornece inserindo o URL do MediaPackage.
+ **Adicionar cabeçalho personalizado**: nenhum.
+ **Habilitar o Origin Shield**: não.
+ **Tentativas de conexão** – 3
+ **Tempo limite de resposta** – 30
+ **Tempo limite do keep alive** – 5

A seguir estão as configurações de cache que o CloudFront define previamente para a origem do MediaPackage v1 em uma distribuição multilocatário.

**Configurações de cache (predefinidas)**
+ **Compactar objetos automaticamente**: sim.
+ **Política de protocolo do visualizador**: redirecionar para HTTPS.
+ **Métodos HTTP permitidos** – `GET, HEAD`
+ **Métodos HTTP de cache**: não.
+ **Permitir solicitações gRPC por HTTP/2**: não.
+ **Restringir acesso ao visualizador**: não.
+ **Política de cache** – `Elemental-MediaPackage`
+ **Política de solicitação de origem**: nenhuma.
+ **Política de cabeçalho de resposta**: nenhuma.
+ **Smooth Streaming**: não.
+ **Criptografia no nível de campo**: não.
+ **Habilitar logs de acesso em tempo real**: não.
+ **Funções**: não.

## Origem do MediaPackage v2
<a name="media-package-v2-origin-preconfiguration"></a>

A seguir estão as configurações de origem que o CloudFront define previamente para a origem do MediaPackage v2 em uma distribuição multilocatário.

**Configurações de origem (predefinidas)**
+ **Controle de acesso à origem**: o CloudFront configura o OAC para você e adiciona a política.
+ **Protocolo**: somente HTTPS.
+ **Porta HTTPS** – 443
+ **Protocolo SSL de origem mínimo**: TLSv1.2.
+ **Caminho de origem**: nenhum.
+ **Adicionar cabeçalho personalizado**: nenhum.
+ **Habilitar o Origin Shield**: não.
+ **Tentativas de conexão** – 3
+ **Tempo limite de resposta** – 30
+ **Tempo limite do keep alive** – 5

A seguir estão as configurações de cache que o CloudFront define previamente para a origem do MediaPackage v2 em uma distribuição multilocatário.

**Configurações de cache (predefinidas)**
+ **Compactar objetos automaticamente**: sim.
+ **Política de protocolo do visualizador**: redirecionar para HTTPS.
+ **Métodos HTTP permitidos** – `GET, HEAD`
+ **Métodos HTTP de cache**: não.
+ **Permitir solicitações gRPC por HTTP/2**: não.
+ **Restringir acesso ao visualizador**: não.
+ **Política de cache** – `Elemental-MediaPackage`
+ **Política de solicitação de origem**: nenhuma.
+ **Política de cabeçalho de resposta**: nenhuma.
+ **Smooth Streaming**: não.
+ **Criptografia no nível de campo**: não.
+ **Habilitar logs de acesso em tempo real**: não.
+ **Funções**: não.

## Origem do MediaTailor
<a name="media-tailor-origin-preconfiguration"></a>

A seguir estão as configurações de origem que o CloudFront define previamente para a origem do MediaTailor em uma distribuição multilocatário.

**Configurações de origem (predefinidas)**
+ **Protocolo**: somente HTTPS.
+ **Porta HTTPS** – 443
+ **Protocolo SSL de origem mínimo**: TLSv1.2.
+ **Caminho de origem**: você o fornece inserindo o URL do MediaPackage.
+ **Adicionar cabeçalho personalizado**: nenhum.
+ **Habilitar o Origin Shield**: não.
+ **Tentativas de conexão** – 3
+ **Tempo limite de resposta** – 30
+ **Tempo limite do keep alive** – 5

A seguir estão as configurações de cache que o CloudFront define previamente para a origem do MediaTailor em uma distribuição multilocatário.

**Configurações de cache (predefinidas)**
+ **Compactar objetos automaticamente**: sim.
+ **Política de protocolo do visualizador**: redirecionar para HTTPS.
+ **Métodos HTTP permitidos** – `GET, HEAD`
+ **Métodos HTTP de cache**: não.
+ **Permitir solicitações gRPC por HTTP/2**: não.
+ **Restringir acesso ao visualizador**: não.
+ **Política de cache**: nenhuma.
+ **Política de solicitação de origem** – `Elemental-MediaTailor-PersonalizedManifests`
+ **Política de cabeçalho de resposta**: nenhuma.
+ **Smooth Streaming**: não.
+ **Criptografia no nível de campo**: não.
+ **Habilitar logs de acesso em tempo real**: não.
+ **Funções**: não.

# Referência de configurações de todas as distribuições
<a name="distribution-web-values-specify"></a>

Você pode optar por editar manualmente suas configurações de distribuição do CloudFront ao criar ou atualizar sua distribuição. A seguir estão as configurações que você pode editar.

No entanto, o CloudFront define a maior parte das configurações de distribuição para você com base no tipo de origem do conteúdo. Para obter mais informações, consulte [Referência de configurações de distribuição predefinidas](template-preconfigured-origin-settings.md).

Para mais informações sobre como criar ou atualizar uma distribuição usando o console do CloudFront, consulte [Criar uma distribuição](distribution-web-creating-console.md) ou [Atualizar uma distribuição](HowToUpdateDistribution.md).

**Topics**
+ [Configurações de origem](DownloadDistValuesOrigin.md)
+ [Configurações de comportamento de cache](DownloadDistValuesCacheBehavior.md)
+ [Configurações de distribuição](DownloadDistValuesGeneral.md)
+ [Páginas de erro personalizadas e erro de armazenamento em cache](DownloadDistValuesErrorPages.md)
+ [Restrições geográficas](DownloadDistValuesEnableGeoRestriction.md)

# Configurações de origem
<a name="DownloadDistValuesOrigin"></a>

Ao usar o console do CloudFront para criar ou atualizar uma distribuição, você deve fornecer informações sobre um ou mais locais, conhecidos como *origens*, onde são armazenadas as versões originais de conteúdo da web. O CloudFront obtém seu conteúdo da Web de suas origens e fornece-o aos visualizadores por meio de uma rede mundial de servidores de borda.

Para obter o número máximo atual de origens que você pode criar para uma distribuição ou para solicitar uma cota maior, consulte [Cotas gerais para distribuições](cloudfront-limits.md#limits-web-distributions).

Se você quiser excluir uma origem, primeiro, deve editar ou excluir os comportamentos de cache associados a ela.

**Importante**  
Se você excluir uma origem, confirme se os arquivos fornecidos anteriormente por ela estão disponíveis em outra origem e se os seus comportamentos de cache estão roteando as solicitações desses arquivos para a nova origem.

Ao criar ou atualizar uma distribuição, você especifica os valores a seguir para cada origem.

**Topics**
+ [Domínio de origem](#DownloadDistValuesDomainName)
+ [Protocolo (somente origens personalizadas)](#DownloadDistValuesOriginProtocolPolicy)
+ [Caminho de origem](#DownloadDistValuesOriginPath)
+ [Nome](#DownloadDistValuesId)
+ [Acesso à origem (somente origens do Amazon S3)](#DownloadDistValuesOAIRestrictBucketAccess)
+ [Adicionar cabeçalho personalizado](#DownloadDistValuesOriginCustomHeaders)
+ [Habilitar o Origin Shield](#create-update-fields-origin-shield)
+ [Tentativas de conexão](#origin-connection-attempts)
+ [Tempo limite da conexão](#origin-connection-timeout)
+ [Tempo limite de resposta](#DownloadDistValuesOriginResponseTimeout)
+ [Tempo limite de conclusão da resposta](#response-completion-timeout)
+ [Tempo limite de keep alive (somente origens de VPC e personalizadas)](#DownloadDistValuesOriginKeepaliveTimeout)
+ [Cotas de tempo limite de resposta e manutenção](#response-keep-alive-timeout-quota)

## Domínio de origem
<a name="DownloadDistValuesDomainName"></a>

O domínio de origem é o nome de domínio do DNS do recurso do qual o CloudFront receberá os objetos de sua origem, como um bucket do Amazon S3 ou um servidor HTTP: Por exemplo:
+ **Bucket do Amazon S** – `amzn-s3-demo-bucket.s3.us-west-2.amazonaws.com`
**nota**  
Se você criou o bucket do S3 recentemente, a distribuição do CloudFront poderá retornar respostas `HTTP 307 Temporary Redirect` por até 24 horas. Até 24 horas podem ser necessárias para que o nome do bucket do S3 seja propagado para todas as regiões da AWS. Quando a propagação estiver concluída, a distribuição interromperá automaticamente o envio dessas respostas de redirecionamento sem exigir nenhuma ação. Para obter mais informações, consulte [Por que estou obtendo uma resposta de redirecionamento temporário HTTP 307 do Amazon S3?](https://repost.aws/knowledge-center/s3-http-307-response) e [Redirecionamento de solicitação temporário](https://docs.aws.amazon.com/AmazonS3/latest/dev/Redirects.html#TemporaryRedirection).
+ **Bucket do Amazon S3 configurado como site** – `amzn-s3-demo-bucket.s3-website.us-west-2.amazonaws.com`
+ **Contêiner do MediaStore** – `examplemediastore.data.mediastore.us-west-1.amazonaws.com`
+ **Endpoint do MediaPackage** – `examplemediapackage.mediapackage.us-west-1.amazonaws.com`
+ **Instância do Amazon EC** – `ec2-203-0-113-25.compute-1.amazonaws.com`
+ **Balanceador de carga do Elastic Load Balancing** – `example-load-balancer-1234567890.us-west-2.elb.amazonaws.com`
+ **Seu próprio servidor Web** – `www.example.com`

Escolha o nome do domínio no campo **Origin domain (Domínio de origem)** ou digite o nome. Os recursos das regiões que requerem adesão devem ser inseridos manualmente. O nome de domínio não diferencia maiúsculas de minúsculas. Seu domínio de origem deve ter um nome de DNS publicamente resolvível que direcione as solicitações dos clientes aos destinos pela internet.

Se você configurar o CloudFront para se conectar à sua origem por HTTPS, um dos nomes de domínio no certificado deverá corresponder ao nome de domínio especificado em **Nome de domínio de origem**. Se nenhum nome de domínio apresentar correspondência, o CloudFront exibirá um código de status HTTP 502 (gateway inválido) para o visualizador. Para obter mais informações, consulte [Nomes de domínio na distribuição do CloudFront e no certificado](cnames-and-https-requirements.md#https-requirements-domain-names-in-cert) e [Falha de negociação SSL/TLS entre o CloudFront e um servidor de origem personalizado](http-502-bad-gateway.md#ssl-negotitation-failure).

**nota**  
Se você estiver usando uma política de solicitação de origem que encaminhe o cabeçalho de host do visualizador à origem, esta deverá responder com um certificado correspondente ao cabeçalho de host do visualizador. Para obter mais informações, consulte [Adicionar cabeçalhos de solicitação do CloudFront](adding-cloudfront-headers.md).

Se sua origem for um bucket do Amazon S3, observe o seguinte:
+ Se o bucket estiver configurado como um site, insira o endpoint de hospedagem do site estático do Amazon S3 no bucket. Não selecione o nome do bucket na lista do campo **Origin domain** (Domínio de origem). O endpoint de hospedagem do site estático é exibido no console do Amazon S3, na página **Properties** (Propriedades) em **Static website hosting** (Hospedagem de site estático). Para obter mais informações, consulte [Usar um bucket do Amazon S3 configurado como um endpoint do site](DownloadDistS3AndCustomOrigins.md#concept_S3Origin_website).
+ Se você configurou o Amazon S3 Transfer Acceleration para seu bucket, não especifique o endpoint `s3-accelerate` para **Origin domain** (Domínio de origem).
+ Se você está usando um bucket de uma conta da AWS diferente e ele não está configurado como um site, digite o nome no seguinte formato:

  `bucket-name.s3.region.amazonaws.com` 

  Se o bucket estiver em uma região dos EUA e você quiser que o Amazon S3 direcione as solicitações para uma instalação no Norte da Virgínia, use o seguinte formato:

  `bucket-name.s3.us-east-1.amazonaws.com` 
+ Os arquivos devem ser legíveis ao público, a menos que você proteja o conteúdo no Amazon S3 usando um controle de acesso à origem do CloudFront. Para obter mais informações sobre controle do acesso, consulte [Restringir o acesso a uma origem do Amazon S3](private-content-restricting-access-to-s3.md).

**Importante**  
Se a origem for um bucket do Amazon S3, o nome do bucket deverá seguir os requisitos de nomenclatura do DNS. Para obter mais informações, acesse [Restrições e limitações de bucket](https://docs.aws.amazon.com/AmazonS3/latest/userguide/BucketRestrictions.html) no *Guia do usuário do Amazon Simple Storage Service*.

Ao alterar o valor de **Origin domain** (Domínio de origem) de uma origem, o CloudFront começará imediatamente a replicar a alteração para seus locais de borda. Enquanto a configuração de distribuição não for atualizada em determinado local de borda, o CloudFront continuará a encaminhar solicitações à origem anterior. Assim que a configuração da distribuição for atualizada no local de borda, o CloudFront começará a encaminhar solicitações à nova origem.

A alteração da origem não requer que o CloudFront preencha os locais de borda de caches novamente com objetos da nova origem. Contanto que as solicitações do visualizador em sua aplicação não tenham sido alteradas, o CloudFront continuará a fornecer objetos que já estão em um ponto de presença de caches até o TTL de cada objeto expirar ou até objetos solicitados raramente serem removidos. 

## Protocolo (somente origens personalizadas)
<a name="DownloadDistValuesOriginProtocolPolicy"></a>

**nota**  
Isto se aplica apenas a origens personalizadas.

A política de protocolo a ser usada pelo CloudFront ao obter objetos de sua origem. 

Escolha um dos seguintes valores:
+ **HTTP only** (Somente HTTP): o CloudFront usa somente HTTP para acessar a origem.
**Importante**  
**HTTP only** (Somente HTTP) é a configuração padrão quando a origem é um endpoint de hospedagem de site estático do Amazon S3, porque o Amazon S3 não comporta conexões HTTPS para endpoint de hospedagem de site estático. O console do CloudFront não oferece suporte à alteração dessa configuração para endpoints de hospedagem de sites estáticos do Amazon S3.
+ **HTTPS only** (Somente HTTP): o CloudFront usa somente HTTPS para acessar a origem.
+ **Match viewer** (Corresponder visualizador): o CloudFront se comunica com sua origem usando HTTP ou HTTPS, dependendo do protocolo da solicitação do visualizador. Observe que o CloudFront armazenará o objeto em cache somente uma vez se os visualizadores fizerem solicitações usando protocolos HTTP e HTTPS.
**Importante**  
Para solicitações HTTPS do visualizador que o CloudFront encaminha para essa origem, um dos nomes de domínio no certificado SSL/TLS de seu servidor de origem deverá corresponder ao nome de domínio especificado para **Origin domain** (Domínio de origem). Do contrário, o CloudFront responderá às solicitações do visualizador com um código de status HTTP 502 (Gateway inválido), em vez de retornar o objeto solicitado. Para obter mais informações, consulte [Requisitos para usar certificados SSL/TLS com o CloudFront](cnames-and-https-requirements.md).

**Topics**
+ [Porta HTTP](#DownloadDistValuesHTTPPort)
+ [Porta HTTPS](#DownloadDistValuesHTTPSPort)
+ [Protocolo SSL de origem mínimo](#DownloadDistValuesOriginSSLProtocols)

### Porta HTTP
<a name="DownloadDistValuesHTTPPort"></a>

**nota**  
Isto se aplica apenas a origens personalizadas.

(Opcional) É possível especificar a porta HTTP na qual a origem personalizada escuta. Os valores válidos incluem as portas 80, 443 e 1024 a 65535. O valor padrão é a porta 80.

**Importante**  
A porta 80 é a configuração padrão quando a origem é um endpoint de hospedagem de site estático do Amazon S3, porque ele só oferece suporte à porta 80 para endpoints de hospedagem de site estático. O console do CloudFront não oferece suporte à alteração dessa configuração para endpoints de hospedagem de sites estáticos do Amazon S3.

### Porta HTTPS
<a name="DownloadDistValuesHTTPSPort"></a>

**nota**  
Isto se aplica apenas a origens personalizadas.

(Opcional) É possível especificar a porta HTTPS na qual a origem personalizada escuta. Os valores válidos incluem as portas 80, 443 e 1024 a 65535. O valor padrão é a porta 443. Quando **Protocol** (Protocolo) é definido como **HTTP only** (Somente HTTP), não é possível especificar um valor para **HTTPS port** (Porta HTTPS).

### Protocolo SSL de origem mínimo
<a name="DownloadDistValuesOriginSSLProtocols"></a>

**nota**  
Isto se aplica apenas a origens personalizadas.

Escolha o protocolo TLS/SSL mínimo que o CloudFront poderá usar ao estabelecer uma conexão HTTPS com a origem. Protocolos TLS mais baixos são menos seguros, portanto, recomendamos que você escolha o protocolo TLS mais recente compatível com a origem. Quando **Protocol** (Protocolo) é definido como **HTTP only** (Somente HTTP), não é possível especificar um valor para **Minimum origin SSL protocol** (Protocolo SSL de origem mínimo).

Se você usar a API do CloudFront para definir o protocolo TLS/SSL para uso do CloudFront, não será possível definir um protocolo mínimo. Em vez disso, especifique todos os protocolos TLS/SSL que o CloudFront poderá usar com sua origem. Para mais informações, consulte [OriginSslProtocols](https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_OriginSslProtocols.html) na *Referência da API do Amazon CloudFront*.

## Caminho de origem
<a name="DownloadDistValuesOriginPath"></a>

Se desejar que o CloudFront solicite seu conteúdo de um diretório em sua origem, insira o caminho do diretório, começando com uma barra (/). O CloudFront acrescenta o caminho do diretório no valor de **Origin domain** (Domínio de origem). Por exemplo, **cf-origin.example.com/production/images**. Não adicione barra (/) no fim do caminho.

Por exemplo, imagine que você especificou os seguintes valores para sua distribuição:
+ **Origin domain** (Domínio de origem): um bucket do Amazon S3 denominado **amzn-s3-demo-bucket**
+ **Origin path (Caminho da origem** – **/production**
+ **Nomes de domínio alternativos (CNAMEs)** – **example.com**

Quando um usuário insere `example.com/index.html` no navegador, o CloudFront envia uma solicitação de `amzn-s3-demo-bucket/production/index.html` para o Amazon S3.

Quando um usuário insere `example.com/acme/index.html` no navegador, o CloudFront envia uma solicitação de `amzn-s3-demo-bucket/production/acme/index.html` para o Amazon S3.

## Nome
<a name="DownloadDistValuesId"></a>

Nome é uma string que identifica exclusivamente essa origem nessa distribuição. Se criar comportamentos de cache além do comportamento de cache padrão, você poderá usar o nome especificado aqui para identificar a origem para a qual o CloudFront encaminhará uma solicitação quando ela tiver o mesmo padrão de caminho desse comportamento de cache.

## Acesso à origem (somente origens do Amazon S3)
<a name="DownloadDistValuesOAIRestrictBucketAccess"></a>

**nota**  
Isso se aplica somente às origens de bucket do Amazon S3 (aquelas que *não* estão usando o endpoint de site estático do S3).

Selecione **Origin access control settings (recommended)** [Configurações de controle de acesso à origem (recomendado)] se você quiser tornar possível restringir o acesso a uma origem de bucket do Amazon S3 somente a distribuições específicas do CloudFront.

Selecione **Public** (Pública) se a origem do bucket do Amazon S3 for acessível ao público.

Para obter mais informações, consulte [Restringir o acesso a uma origem do Amazon S3](private-content-restricting-access-to-s3.md).

Para obter informações sobre como exigir que os usuários acessem objetos em uma origem personalizada usando somente URLs do CloudFront, consulte [Restringir o acesso a arquivos em origens personalizadas](private-content-overview.md#forward-custom-headers-restrict-access).

## Adicionar cabeçalho personalizado
<a name="DownloadDistValuesOriginCustomHeaders"></a>

Se você quiser que o CloudFront inclua cabeçalhos personalizados sempre que encaminhar uma solicitação para sua origem, especifique o nome do cabeçalho e o respectivo valor. Para obter mais informações, consulte [Adicionar cabeçalhos personalizados às solicitações de origem](add-origin-custom-headers.md).

Para saber o número máximo de cabeçalhos personalizados que você pode adicionar, o tamanho máximo do nome e valor de um cabeçalho personalizado e o tamanho total de todos os nomes e valores de cabeçalho, consulte [Cotas](cloudfront-limits.md).

## Habilitar o Origin Shield
<a name="create-update-fields-origin-shield"></a>

Escolha **Yes** (Sim) para habilitar o CloudFront Origin Shield. Para obter mais informações sobre o Origin Shield, consulte [Usar o Amazon CloudFront Origin Shield](origin-shield.md).

## Tentativas de conexão
<a name="origin-connection-attempts"></a>

É possível definir o número de vezes que o CloudFront tenta se conectar à origem. É possível especificar 1, 2 ou 3 como o número de tentativas. O número padrão (caso nenhum seja especificado) é 3.

Use essa configuração com o **Connection timeout** (Tempo limite da conexão) para especificar o período que o CloudFront deve esperar antes de tentar se conectar à origem secundária ou retornar uma resposta de erro ao visualizador. Por padrão, o CloudFront aguarda até 30 segundos (3 tentativas de 10 segundos cada) antes de tentar se conectar à origem secundária ou retornar uma resposta de erro. É possível reduzir esse tempo especificando menos tentativas, um tempo limite de conexão mais curto ou ambos.

Se houver falha de conexão no número de tentativas especificado, o CloudFront executará um dos seguintes procedimentos:
+ Se a origem fizer parte de um grupo de origens, o CloudFront tentará se conectar à origem secundária. Se houver falha de conexão no número de tentativas especificado para a origem secundária, o CloudFront retornará uma resposta de erro ao visualizador.
+ Se a origem não fizer parte de um grupo de origens, o CloudFront retornará uma resposta de erro ao visualizador.

Para uma origem personalizada (incluindo um bucket do Amazon S3 configurado com hospedagem de site estático), essa configuração também especifica o número de vezes que o CloudFront tenta obter uma resposta da origem. Para obter mais informações, consulte [Tempo limite de resposta](#DownloadDistValuesOriginResponseTimeout).

## Tempo limite da conexão
<a name="origin-connection-timeout"></a>

Tempo limite de conexão é o número de segundos que o CloudFront aguarda ao tentar estabelecer conexão com a origem. É possível especificar um número de segundos entre 1 e 10 (inclusive). O tempo limite padrão (caso nenhum seja especificado) é 10 segundos.

Use essa configuração com **Connection attempts** (Tentativas de conexão) para especificar o período que o CloudFront deve esperar antes de tentar se conectar à origem secundária ou antes de retornar uma resposta de erro ao visualizador. Por padrão, o CloudFront aguarda até 30 segundos (3 tentativas de 10 segundos cada) antes de tentar se conectar à origem secundária ou retornar uma resposta de erro. É possível reduzir esse tempo especificando menos tentativas, um tempo limite de conexão mais curto ou ambos.

Se o CloudFront não estabelecer uma conexão com a origem dentro do número especificado de segundos, ele fará o seguinte:
+ Se o número especificado de **Connection attempts** (Tentativas de conexão) for maior que 1, o CloudFront tentará estabelecer uma conexão novamente. O CloudFront tentará até três vezes, conforme determinado pelo valor de **Connection attempts** (Tentativas de conexão).
+ Se houver falha em todas as tentativas de conexão e a origem fizer parte de um grupo de origens, o CloudFront tentará se conectar à origem secundária. Se houver falha de conexão no número de tentativas especificado para a origem secundária, o CloudFront retornará uma resposta de erro ao visualizador.
+ Se houver falha em todas as tentativas de conexão e a origem não fizer parte de um grupo de origens, o CloudFront retornará uma resposta de erro ao visualizador.

## Tempo limite de resposta
<a name="DownloadDistValuesOriginResponseTimeout"></a>

O tempo limite da resposta de origem, também conhecido como *tempo limite da leitura de origem* ou *tempo limite da solicitação de origem*, aplica-se a estes dois valores:
+ O período (em segundos) que o CloudFront aguarda uma resposta após o encaminhamento de uma solicitação à origem.
+ O período (em segundos) que o CloudFront aguarda após o recebimento de um pacote de uma resposta da origem e antes do recebimento do próximo pacote.

**dica**  
Se você quiser aumentar o valor de tempo limite porque os visualizadores estão com erros de código de status HTTP 504, considere explorar outras maneiras de eliminar esses erros antes de alterar o valor de tempo limite. Consulte as sugestões para solução de problemas em [Código de status HTTP 504 (tempo limite do gateway)](http-504-gateway-timeout.md).

O comportamento do CloudFront depende do método HTTP na solicitação de visualizador:
+ Solicitações `GET` e `HEAD`: se a origem não responder ou parar de responder dentro da duração do tempo limite da resposta, o CloudFront interromperá a conexão. O CloudFront tentará se conectar novamente de acordo com o valor de [Tentativas de conexão](#origin-connection-attempts).
+ Solicitações `DELETE`, `OPTIONS`, `PATCH`, `PUT` e `POST`: se a origem não responder dentro da duração do tempo limite da leitura, o CloudFront interromperá a conexão e não tentará entrar em contato com a origem novamente. O cliente pode reenviar a solicitação, se necessário.

## Tempo limite de conclusão da resposta
<a name="response-completion-timeout"></a>

**nota**  
O tempo limite de conclusão da resposta não é compatível com o recurso de [implantação contínua](continuous-deployment.md).

O tempo (em segundos) em que uma solicitação do CloudFront para a origem pode permanecer aberta e aguardar uma resposta. Se a resposta completa não for recebida da origem até esse momento, o CloudFront encerrará a conexão.

Ao contrário do **tempo limite de resposta**, que é o tempo de espera para pacotes de resposta *individuais*, o **tempo limite de conclusão da resposta** é o tempo *máximo* permitido que o CloudFront espera pela conclusão da resposta. Você pode usar essa configuração para garantir que o CloudFront não espere indefinidamente por uma origem lenta ou sem resposta, mesmo que outras configurações de tempo limite permitam uma espera mais longa.

Esse tempo limite máximo inclui o que você especificou para outras configurações de tempo limite e o número de **Tentativas de conexão** para cada nova tentativa. Você pode usar essas configurações em conjunto para especificar quanto tempo o CloudFront espera pela solicitação completa e quando finalizar a solicitação, independentemente de ela estar concluída ou não.

Por exemplo, se você definir as seguintes configurações:
+ **Tentativas de conexão** são 3.
+ O **Tempo limite da conexão** é de 10 segundos
+ O **Tempo limite de resposta** é de 30 segundos
+ O **Tempo limite de conclusão da resposta** é de 60 segundos

Isso significa que o CloudFront tentará se conectar à origem (até 3 tentativas no total), com o tempo limite de cada tentativa de conexão em 10 segundos. Uma vez conectado, o CloudFront aguardará até 30 segundos para que a origem responda à solicitação até receber o último pacote da resposta.

Independentemente do número de tentativas de conexão ou do tempo limite de resposta, o CloudFront encerrará a conexão se a resposta completa da origem levar mais de 60 segundos para ser concluída. O CloudFront então retornará ao visualizador uma resposta de erro [Código de status HTTP 504 (tempo limite do gateway)](http-504-gateway-timeout.md) ou uma resposta de erro personalizada, se você especificar uma.

**Observações**  
Se você definir um valor para o tempo limite de conclusão da resposta, o valor deverá ser igual ou maior que o valor do [tempo limite de resposta (tempo limite de leitura de origem)](#DownloadDistValuesOriginResponseTimeout).
Se você não definir um valor para o tempo limite de conclusão da resposta, o CloudFront não aplicará um valor máximo.

## Tempo limite de keep alive (somente origens de VPC e personalizadas)
<a name="DownloadDistValuesOriginKeepaliveTimeout"></a>

O tempo limite de keep-alive é o período (em segundos) em que o CloudFront tentará manter uma conexão com a origem personalizada depois de obter o último pacote de uma resposta. A manutenção de uma conexão persistente economiza o tempo necessário para restabelecer a conexão TCP e executar outro handshake TLS para solicitações subsequentes. O aumento do tempo limite da conexão keep alive ajuda a melhorar a métrica da solicitação por conexão nas distribuições.

**nota**  
Para que o valor **Keep-alive timeout** (Tempo limite keep alive) entre em vigor, a origem deverá ser configurada para permitir conexões persistentes.

## Cotas de tempo limite de resposta e manutenção
<a name="response-keep-alive-timeout-quota"></a>
+ O padrão do [tempo limite de resposta](#DownloadDistValuesOriginResponseTimeout) é de 30 segundos. 
+ O padrão do [tempo limite de manutenção](#DownloadDistValuesOriginKeepaliveTimeout) é de 5 segundos.

Se você solicitar um aumento de tempo limite para a Conta da AWS, atualize as origens da distribuição para os valores de tempo limite de resposta e de manutenção que você deseja. Um aumento de cota para sua conta não atualiza automaticamente as origens. Por exemplo, se você estiver usando uma função do Lambda@Edge para definir um tempo limite de manutenção de 90 segundos, a origem já deverá ter um tempo limite de manutenção de 90 segundos ou mais. Caso contrário, a função do Lambda@Edge poderá falhar na execução.

Para obter mais informações sobre cotas de distribuição, incluindo como solicitar um aumento, consulte [Cotas gerais para distribuições](cloudfront-limits.md#limits-web-distributions).

# Configurações de comportamento de cache
<a name="DownloadDistValuesCacheBehavior"></a>

Ao definir o comportamento de cache, é possível configurar uma variedade de funcionalidades do CloudFront para um padrão de caminho de URL específico para arquivos no site. Por exemplo, um comportamento de cache pode se aplicar a todos os arquivos `.jpg` no diretório `images` em um servidor web sendo usado como servidor de origem do CloudFront. A funcionalidade que pode ser configurada para cada comportamento de cache inclui:
+ O padrão de caminho.
+ Se você tiver configurado várias origens para a distribuição do CloudFront, a origem para a qual você deseja que o CloudFront encaminhe suas solicitações.
+ Se deve encaminhar strings de consulta para a origem.
+ Se o acesso a arquivos específicos requer URLs assinados.
+ Se deve exigir que os usuários usem HTTPS para acessar esses arquivos.
+ O tempo mínimo de permanência desses arquivos no cache do CloudFront, independentemente do valor de qualquer cabeçalho `Cache-Control` adicionado por sua origem aos arquivos.

Ao criar uma distribuição, você especifica as configurações do comportamento de cache padrão, que encaminha automaticamente todas as solicitações para a origem especificada ao criar a distribuição. Depois que criar uma distribuição, você poderá criar outros comportamentos de cache que definem como o CloudFront responde ao receber uma solicitação de objetos que correspondem a um padrão de caminho, por exemplo, `*.jpg`. Se você criar mais comportamentos de cache, o comportamento de cache padrão será sempre o último a ser processado. Outros comportamentos de cache são processados na ordem indicada no console do CloudFront ou, se você estiver usando a API do CloudFront, na ordem indicada no elemento `DistributionConfig` da distribuição. Para obter mais informações, consulte [Padrão de caminho](#DownloadDistValuesPathPattern).

Ao criar um comportamento de cache, especifique a origem da qual você deseja que o CloudFront obtenha objetos. Como resultado, se quiser que o CloudFront distribua objetos de todas as suas origens, você deverá ter, pelo menos, a mesma quantidade de comportamentos de cache (inclusive o comportamento de cache padrão) que o número de origens. Por exemplo, se você tiver duas origens e somente o comportamento de cache padrão, o comportamento de cache padrão fará com que o CloudFront obtenha objetos de uma das origens, mas a outra origem nunca será usada.

Para obter o número máximo atual de comportamentos de cache que podem ser adicionados a uma distribuição ou solicitar uma cota maior (anteriormente conhecida como limite), consulte [Cotas gerais para distribuições](cloudfront-limits.md#limits-web-distributions).

**Topics**
+ [Padrão de caminho](#DownloadDistValuesPathPattern)
+ [Origem ou grupo de origem](#DownloadDistValuesTargetOriginId)
+ [Política de protocolo do visualizador](#DownloadDistValuesViewerProtocolPolicy)
+ [Métodos HTTP permitidos](#DownloadDistValuesAllowedHTTPMethods)
+ [Configuração da criptografia em nível de campo](#DownloadDistValuesFieldLevelEncryption)
+ [Métodos HTTP em cache](#DownloadDistValuesCachedHTTPMethods)
+ [Permitir solicitações gRPC por HTTP/2](#enable-grpc-distribution)
+ [Cache baseado em Cabeçalhos de solicitação selecionados](#DownloadDistValuesForwardHeaders)
+ [Lista de permissões de cabeçalhos](#DownloadDistValuesAllowlistHeaders)
+ [Armazenamento de objetos em cache](#DownloadDistValuesObjectCaching)
+ [Minimum TTL](#DownloadDistValuesMinTTL)
+ [Maximum TTL](#DownloadDistValuesMaxTTL)
+ [TTL padrão](#DownloadDistValuesDefaultTTL)
+ [Cookies progressivos](#DownloadDistValuesForwardCookies)
+ [Lista de permissões de cookies](#DownloadDistValuesAllowlistCookies)
+ [Encaminhamento e armazenamento em cache de strings de consulta](#DownloadDistValuesQueryString)
+ [Lista de permissões de strings de consulta](#DownloadDistValuesQueryStringAllowlist)
+ [Smooth Streaming](#DownloadDistValuesSmoothStreaming)
+ [Restringir acesso do visualizador (usar URLs ou cookies assinados)](#DownloadDistValuesRestrictViewerAccess)
+ [Signatários confiáveis](#DownloadDistValuesTrustedSigners)
+ [Conta da AWSNúmeros de](#DownloadDistValuesAWSAccountNumbers)
+ [Compactar objetos automaticamente](#DownloadDistValuesCompressObjectsAutomatically)
+ [Evento do CloudFront](#DownloadDistValuesEventType)
+ [ARN da função do Lambda.](#DownloadDistValuesLambdaFunctionARN)
+ [Incluir corpo](#include-body)

## Padrão de caminho
<a name="DownloadDistValuesPathPattern"></a>

Um padrão de caminho (por exemplo, `images/*.jpg`) especifica a quais solicitações aplicar o comportamento de cache. Quando o CloudFront recebe uma solicitação do usuário final, o caminho solicitado é comparado com os padrões de caminho na ordem em que os comportamentos de cache estão listados na distribuição. A primeira correspondência determina qual comportamento de cache é aplicado a essa solicitação. Por exemplo, imagine que você tenha três comportamentos de cache com os seguintes padrões de caminho, na ordem:
+ `images/*.jpg`
+ `images/*`
+ `*.gif`

**nota**  
Você também pode incluir uma barra (/) no início do padrão de caminho, por exemplo, `/images/*.jpg`. O comportamento do CloudFront é o mesmo com ou sem a / inicial. Se / não for especificado no início do caminho, esse caractere estará automaticamente implícito. O CloudFront tratará o caminho da mesma forma com ou sem / inicial. Por exemplo, o CloudFront trata `/*product.jpg` da mesma forma que `*product.jpg`

Uma solicitação para o arquivo `images/sample.gif` não satisfaz o primeiro padrão de caminho. Portanto, os comportamentos de cache associados não são aplicados à solicitação. O arquivo satisfaz o segundo padrão de caminho, portanto, os comportamentos de cache associados a ele são aplicados, embora a solicitação também corresponda ao terceiro padrão de caminho.

**nota**  
Ao criar uma distribuição, o valor de **Path Pattern** para o comportamento de cache padrão é definido como **\$1** (todos os arquivos) e não pode ser alterado. Esse valor faz com que o CloudFront encaminhe todas as solicitações de objetos para a origem especificada no campo [Domínio de origem](DownloadDistValuesOrigin.md#DownloadDistValuesDomainName). Se a solicitação de um objeto não corresponder ao padrão de caminho dos outros comportamentos de cache, o CloudFront aplicará o comportamento especificado no comportamento de cache padrão.

**Importante**  
Defina os padrões de caminho e a sequência deles cuidadosamente, caso contrário, você poderá conceder aos usuários acesso indesejado ao seu conteúdo. Por exemplo, imagine que uma solicitação corresponda ao padrão de caminho de dois comportamentos de cache. O primeiro comportamento de cache não requer signed URLs, mas o segundo comportamento de cache, sim. Os usuários poderão acessar os objetos sem usar um signed URL porque o CloudFront processa o comportamento de cache associado à primeira correspondência.

Se você estiver trabalhando com um canal do MediaPackage, será necessário incluir padrões de caminho específicos para o comportamento de cache que você definiu para o tipo de endpoint de sua origem. Por exemplo, para um endpoint DASH, digite `*.mpd` em **Path Pattern (Padrão de caminho)**. Para mais informações e instruções específicas, consulte [Veicular vídeo ao vivo formatado com o AWS Elemental MediaPackage](live-streaming.md#live-streaming-with-mediapackage).

O caminho especificado se aplica a solicitações de todos os arquivos no diretório especificado e nos subdiretórios abaixo dele. O CloudFront não considera strings de consulta ou cookies ao avaliar o padrão de caminho. Por exemplo, se um diretório `images` contém subdiretórios `product1` e `product2`, o padrão de caminho `images/*.jpg` se aplica a solicitações de qualquer arquivo .jpg nos diretórios `images`, `images/product1` e `images/product2`. Se você quiser aplicar um comportamento de cache nos arquivos do diretório `images/product1` diferente dos arquivos dos diretórios `images` e `images/product2`, crie um comportamento de cache separado para `images/product1` e mova-o para uma posição acima (anterior) do comportamento de cache do diretório `images`.

Você pode usar os seguintes caracteres curinga no padrão de caminho:
+ `*` corresponde a 0 ou mais caracteres.
+ `?` corresponde a exatamente 1 caractere.

Os seguintes exemplos mostram como funcionam os caracteres curinga:


****  

| Padrão de caminho | Os arquivos que correspondem ao padrão de caminho | 
| --- | --- | 
|  `*.jpg`  |  Todos os arquivos .jpg  | 
|  `images/*.jpg`  |  Todos os arquivos do diretório `images` e subdiretórios no diretório `images`  | 
|  `a*.jpg`  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/AmazonCloudFront/latest/DeveloperGuide/DownloadDistValuesCacheBehavior.html)  | 
|  `a??.jpg`  |  Todos os arquivos .jpg cujo nome começa com `a` e é seguido por exatamente dois outros caracteres, por exemplo, `ant.jpg` e `abe.jpg`.  | 
|  `*.doc*`  |  Todos os arquivos cuja extensão do nome de arquivo começa com `.doc`, por exemplo, os arquivos `.doc`, `.docx` e `.docm`. Você não pode usar o padrão de caminho `*.doc?` nesse caso, porque ele não se aplica a solicitações de arquivos `.doc`. O caractere curinga `?` substitui exatamente um caractere.  | 

O tamanho máximo de um padrão de caminho é 255 caracteres. O valor pode conter espaços ou um destes caracteres:
+ A-Z, a-z

  Os padrões de caminho diferenciam letras maiúsculas de minúsculas, portanto, o padrão `*.jpg` não se aplica ao arquivo `LOGO.JPG`.
+ 0-9
+ \$1 - . \$1 \$1 / \$1 " ' @ : \$1
+ &, passado e retornado como `&amp;`

### Normalização de caminhos
<a name="path-normalization"></a>

O CloudFront normaliza os caminhos de URI consistentes [com a RFC 3986](https://datatracker.ietf.org/doc/html/rfc3986#section-6) e, em seguida, combina o caminho com o comportamento correto do cache. Depois que o comportamento do cache é correspondido, o CloudFront envia o caminho bruto do URI para a origem. Se não forem correspondentes, as solicitações serão correspondentes ao comportamento de cache padrão. 

Alguns caracteres são normalizados e removidos do caminho, como várias barras (`//`) ou pontos (`..`). Isso pode alterar o URL que o CloudFront usa para corresponder ao comportamento de cache pretendido. 

**Example Exemplo**  
Você especifica os caminhos `/a/b*` e `/a*` para seu comportamento de cache.  
+ Um visualizador que envia o caminho `/a/b?c=1` corresponderá ao comportamento do cache `/a/b*`.
+ Um visualizador que envia o caminho `/a/b/..?c=1` corresponderá ao comportamento do cache `/a*`.

Para contornar os caminhos que estão sendo normalizados, é possível atualizar os caminhos da solicitação ou o padrão do caminho para o comportamento do cache.

## Origem ou grupo de origem
<a name="DownloadDistValuesTargetOriginId"></a>

Essa configuração aplica-se somente ao criar ou atualizar o comportamento de cache de uma distribuição existente.

Informe o valor de uma origem ou um grupo de origem existente. Isso identifica a origem para a qual você deseja que o CloudFront encaminhe as solicitações quando uma solicitação (como https://example.com/logo.jpg) corresponder ao padrão de caminho de um comportamento de cache (como \$1.jpg) ou do comportamento de cache padrão (\$1).

## Política de protocolo do visualizador
<a name="DownloadDistValuesViewerProtocolPolicy"></a>

Escolha a política de protocolo que você deseja que os visualizadores usem para acessar seu conteúdo em pontos de presença do CloudFront.
+ **HTTP and HTTPS**: os visualizadores pode usar os dois protocolos. 
+ **Redirect HTTP to HTTPS**: os visualizadores podem usar os dois protocolos, mas solicitações HTTP são automaticamente redirecionadas para HTTPS.
+ **HTTPS Only**: os visualizadores só podem acessar seu conteúdo se estiverem usando HTTPS.

Para obter mais informações, consulte [Exigir HTTPS na comunicação entre visualizadores e CloudFront](using-https-viewers-to-cloudfront.md).

## Métodos HTTP permitidos
<a name="DownloadDistValuesAllowedHTTPMethods"></a>

Especifique os métodos HTTP a serem processados e encaminhados pelo CloudFront para sua origem:
+ **GET, HEAD:** é possível usar o CloudFront somente para obter objetos da sua origem ou para obter cabeçalhos do objeto.
+ **GET, HEAD, OPTIONS:**: é possível usar o CloudFront somente para obter objetos da sua origem, obter cabeçalhos do objeto ou recuperar uma lista das opções compatíveis com seu servidor de origem.
+ **GET, HEAD, OPTIONS, PUT, POST, PATCH, DELETE:** é possível usar o CloudFront para obter, adicionar, atualizar e excluir objetos, e também para obter os cabeçalhos do objeto. Além disso, você pode executar outras operações de POST, como enviar dados de um formulário da web. 
**nota**  
Se você estiver usando gRPC na workload, será necessário selecionar **GET, HEAD, OPTIONS, PUT, POST, PATCH, DELETE**. As workloads gRPC exigem o método `POST`. Para obter mais informações, consulte [Usar gRPC com distribuições do CloudFront](distribution-using-grpc.md).  
O CloudFront armazena respostas a solicitações `GET` e `HEAD` e, opcionalmente, a solicitações `OPTIONS`. As respostas para as solicitações `OPTIONS` são armazenadas em cache separadamente das respostas para solicitações `GET` e `HEAD` (o método `OPTIONS` está incluído na [chave de cache](understanding-the-cache-key.md) para solicitações `OPTIONS`). O CloudFront não armazena em cache respostas a solicitações que usam outros métodos.

**Importante**  
Se você escolher **GET, HEAD, OPTIONS** ou **GET, HEAD, OPTIONS, PUT, POST, PATCH, DELETE**, talvez seja necessário restringir o acesso ao seu bucket do Amazon S3 ou à sua origem personalizada para evitar que os usuários executem operações indesejadas. Os seguintes exemplos explicam como restringir o acesso:  
**Se você estiver usando o Amazon S3 como origem da distribuição:** crie uma identidade do acesso de origem do CloudFront para restringir o acesso ao conteúdo do Amazon S3 e conceda permissões ao controle de acesso à origem. Por exemplo, se você configurar o CloudFront para aceitar e encaminhar esses métodos *somente* porque deseja usar `PUT`, mesmo assim será necessário configurar políticas de bucket do Amazon S3 para lidar com solicitações `DELETE` de forma apropriada. Para obter mais informações, consulte [Restringir o acesso a uma origem do Amazon S3](private-content-restricting-access-to-s3.md).
**Se você estiver usando uma origem personalizada:** configure seu servidor de origem para lidar com todos os métodos. Por exemplo, se você configurar o CloudFront para aceitar e encaminhar esses métodos *somente* porque deseja usar `POST`, mesmo assim, é necessário configurar seu servidor de origem para lidar com solicitações `DELETE` forma apropriada. 

## Configuração da criptografia em nível de campo
<a name="DownloadDistValuesFieldLevelEncryption"></a>

Para impor a criptografia em nível de campo em campos de dados específicos, na lista suspensa, selecione uma configuração de criptografia em nível de campo.

Para obter mais informações, consulte [Use criptografia de nível de campo para ajudar a proteger dados confidenciais](field-level-encryption.md).

## Métodos HTTP em cache
<a name="DownloadDistValuesCachedHTTPMethods"></a>

Especifique se você deseja que o CloudFront armazene em cache a resposta da sua origem quando um visualizador enviar uma solicitação `OPTIONS`. O CloudFront sempre armazena a resposta às solicitações `GET` e `HEAD` em cache.

## Permitir solicitações gRPC por HTTP/2
<a name="enable-grpc-distribution"></a>

Especifique se você deseja que sua distribuição permita solicitações gRPC. Para habilitar o gRPC, selecione as seguintes configurações: 
+ Em **[Métodos HTTP permitidos](#DownloadDistValuesAllowedHTTPMethods)**, selecione os métodos **GET, HEAD, OPTIONS, PUT, POST, PATCH e DELETE**. O gRPC exige o método `POST`.
+ Marque a caixa de seleção gRPC que aparece depois que você seleciona o método `POST`.
+ Para **[Versões de HTTP compatíveis](DownloadDistValuesGeneral.md#DownloadDistValuesSupportedHTTPVersions)**, selecione **HTTP/2**.

Para obter mais informações, consulte [Usar gRPC com distribuições do CloudFront](distribution-using-grpc.md).

## Cache baseado em Cabeçalhos de solicitação selecionados
<a name="DownloadDistValuesForwardHeaders"></a>

Especifique se deseja que o CloudFront armazene os objetos em cache com base nos valores dos cabeçalhos especificados:
+ **None (Nenhum; melhora cache)**: o CloudFront não armazena os objetos em cache com base nos valores do cabeçalho.
+ **Lista de permissões**: o CloudFront armazena os objetos em cache com base somente nos valores dos cabeçalhos especificados. Use **Lista de permissões de cabeçalhos** para escolher os cabeçalhos nos quais deseja que o CloudFront baseie o armazenamento em cache.
+ **All (Todos)**: o CloudFront não armazena em cache os objetos associados a esse comportamento de cache. Em vez disso, o CloudFront envia todas as solicitações para a origem. (Não recomendado para origens do Amazon S3.)

Independentemente da opção escolhida, o CloudFront encaminhará determinados cabeçalhos para sua origem e realizará ações específicas com base nos cabeçalhos encaminhados por você. Para mais informações sobre como o CloudFront trata o encaminhamento de cabeçalhos, consulte [Cabeçalhos de solicitação HTTP e comportamento do CloudFront (origens do Amazon S3 e personalizadas)](RequestAndResponseBehaviorCustomOrigin.md#request-custom-headers-behavior).

Para mais informações sobre como configurar o armazenamento em cache no CloudFront usando cabeçalhos de solicitação, consulte [Conteúdo em cache com base nos cabeçalhos de solicitação](header-caching.md).

## Lista de permissões de cabeçalhos
<a name="DownloadDistValuesAllowlistHeaders"></a>

Essas configurações aplicam-se somente ao escolher **Lista de permissões** para **Cache baseado nos cabeçalhos da solicitação selecionados**.

Especifique os cabeçalhos a serem considerados pelo CloudFront ao armazenar seus objetos em cache. Selecione os cabeçalhos na lista de cabeçalhos disponíveis e escolha **Add**. Para encaminhar um cabeçalho personalizado, insira o nome dele no campo e escolha **Add Custom**.

Para saber o número máximo atual de cabeçalhos que podem ser incluídos na lista de permissões para cada comportamento de cache ou para solicitar uma cota maior (anteriormente conhecida como limite), consulte [Cotas para cabeçalhos](cloudfront-limits.md#limits-custom-headers).

## Armazenamento de objetos em cache
<a name="DownloadDistValuesObjectCaching"></a>

Se o servidor de origem estiver adicionando um cabeçalho `Cache-Control` a seus objetos para controlar o tempo de permanência deles no cache do CloudFront e se você não quiser alterar o valor de `Cache-Control`, escolha **Use Origin Cache Headers (Usar cabeçalhos de cache de origem)**.

Para especificar o tempo mínimo e máximo de permanência dos seus objetos no cache do CloudFront, independentemente dos cabeçalhos `Cache-Control`, e o tempo padrão de permanência dos seus objetos no cache do CloudFront quando o cabeçalho `Cache-Control` estiver ausente de um objeto, escolha **Customize (Personalizar)**. Em seguida, especifique valores nos campos **Minimum TTL (TTL mínimo)**, **Default TTL (TTL padrão)**e **Maximum TTL (TTL máximo)**.

Para obter mais informações, consulte [Gerenciar o tempo de permanência do conteúdo no cache (expiração)](Expiration.md).

## Minimum TTL
<a name="DownloadDistValuesMinTTL"></a>

Especifique o tempo mínimo, em segundos, que você deseja que os objetos permaneçam no cache do CloudFront antes do CloudFront enviar outra solicitação para a origem a fim de determinar se o objeto foi atualizado.

**Atenção**  
Se seu TTL mínimo for maior que 0, o CloudFront armazenará em cache o conteúdo pelo menos pela duração especificada no TTL mínimo da política de cache, mesmo que as diretivas `Cache-Control: no-cache`, `no-store` ou `private` estejam presentes nos cabeçalhos de origem.

Para obter mais informações, consulte [Gerenciar o tempo de permanência do conteúdo no cache (expiração)](Expiration.md).

## Maximum TTL
<a name="DownloadDistValuesMaxTTL"></a>

Especifique o tempo máximo (em segundos) que você deseja que os objetos permaneçam em caches do CloudFront antes de ele consultar sua origem para ver se o objeto foi atualizado. O valor especificado para **Maximum TTL** é aplicado apenas quando sua origem adiciona cabeçalhos HTTP, como `Cache-Control max-age`, `Cache-Control s-maxage` ou `Expires`, aos objetos. Para obter mais informações, consulte [Gerenciar o tempo de permanência do conteúdo no cache (expiração)](Expiration.md).

Para especificar um valor para **Maximum TTL**, você deve escolher a opção **Customize** para a configuração **Object Caching**.

O valor padrão de **Maximum TTL** é 31.536.000 segundos (um ano). Se você alterar o valor de **Minimum TTL** ou **Default TTL** para mais de 31.536.000 segundos, o valor padrão de **Maximum TTL** será alterado para o valor de **Default TTL**. 

## TTL padrão
<a name="DownloadDistValuesDefaultTTL"></a>

O tempo padrão que você deseja que os objetos permaneçam em caches do CloudFront antes de ele encaminhar outra solicitação para sua origem para determinar se o objeto foi atualizado. O valor especificado para **TTL padrão** aplica-se apenas quando a origem *não* adiciona cabeçalhos HTTP, como `Cache-Control max-age`, `Cache-Control s-maxage` ou `Expires`, aos objetos. Para obter mais informações, consulte [Gerenciar o tempo de permanência do conteúdo no cache (expiração)](Expiration.md).

Para especificar um valor para **Default TTL**, você deve escolher a opção **Customize** para a configuração **Object Caching**.

O valor padrão de **Default TTL** é 86.400 segundos (um dia). Se você alterar o valor de **Minimum TTL** para mais de 86.400 segundos, o valor padrão de **Default TTL** será alterado para o valor de **Minimum TTL**. 

## Cookies progressivos
<a name="DownloadDistValuesForwardCookies"></a>

**nota**  
Para as origens do Amazon S3, essa opção se aplica somente a buckets configurados como um endpoint de site.

Especifique se você deseja que o CloudFront encaminhe cookies ao seu servidor de origem e, caso afirmativo, para quais servidores. Se você optar por encaminhar apenas cookies selecionados (uma lista de permissões de cookies), insira os nomes dos cookies no campo **Lista de permissões de cookies**. Se você escolher **All (Todos)**, o CloudFront encaminhará todos os cookies, independentemente de quantos sua aplicação usar.

O Amazon S3 não processa cookies, e o encaminhamento deles para a origem reduz a capacidade de armazenamento em cache. Para comportamentos de cache que estiverem encaminhando solicitações para uma origem do Amazon S3, escolha **None (Nenhum)** em **Forward Cookies (Encaminhar cookies)**.

Para obter mais informações sobre como encaminhar cookies para a origem, acesse [Conteúdo em cache com base em cookies](Cookies.md).

## Lista de permissões de cookies
<a name="DownloadDistValuesAllowlistCookies"></a>

**nota**  
Para as origens do Amazon S3, essa opção se aplica somente a buckets configurados como um endpoint de site.

Se você selecionou **Lista de permissões** na lista **Encaminhar cookies**, no campo **Lista de permissões de cookies**, insira os nomes dos cookies a serem encaminhados pelo CloudFront ao servidor de origem para esse comportamento de cache. Insira cada nome de cookie em uma nova linha.

Você pode especificar os seguintes curingas para especificar nomes de cookies:
+ **\$1** corresponde a zero ou mais caracteres no nome do cookie
+ **?** corresponde a exatamente um caractere no nome do cookie

Por exemplo, imagine que o visualizador solicite que um objeto inclua um cookie denominado:

`userid_member-number`

Em que cada usuário tem um valor exclusivo para *member-number*. Você deseja que o CloudFront armazene em cache uma versão separada do objeto para cada membro. Isso pode ser feito encaminhando todos os cookies para a sua origem, mas as solicitações do visualizador incluem alguns cookies que você não quer que o CloudFront armazene em cache. Como alternativa, é possível especificar o seguinte valor como um nome de cookie, fazendo com que o CloudFront encaminhe todos os cookies que comecem com para a orige `userid_`:

`userid_*`

Para saber o número máximo atual de nomes de cookies que podem ser incluídos na lista de permissões para cada comportamento de cache ou para solicitar uma cota maior (anteriormente conhecida como limite), consulte [Cotas para cookies (configurações de cache herdadas)](cloudfront-limits.md#limits-allowlisted-cookies).

## Encaminhamento e armazenamento em cache de strings de consulta
<a name="DownloadDistValuesQueryString"></a>

O CloudFront pode armazenar em cache diferentes versões do seu conteúdo com base nos valores dos parâmetros da query string. Escolha uma das seguintes opções:

**None (Improves Caching)**  
Escolha essa opção se a sua origem retornar a mesma versão de um objeto, independentemente dos valores dos parâmetros de query string. Isso aumenta a probabilidade de o CloudFront atender a uma solicitação do cache, melhorando a performance e reduzindo a carga na origem.

**Encaminhar tudo, cache com base em lista de permissões**  
Escolha essa opção caso o servidor de origem retorne diferentes versões dos objetos com base em um ou mais parâmetros de query string. Depois, especifique os parâmetros que você deseja que o CloudFront use como base para o armazenamento em cache no campo [Lista de permissões de strings de consulta](#DownloadDistValuesQueryStringAllowlist).

**Forward all, cache based on all**  
Escolha essa opção caso o servidor de origem retorne diferentes versões dos objetos para todos os parâmetros de query string. 

Para obter mais informações sobre como armazenar em cache com base nos parâmetros de query string, inclusive como melhorar a performance, consulte [Conteúdo em cache com base em parâmetros de string de consulta](QueryStringParameters.md).

## Lista de permissões de strings de consulta
<a name="DownloadDistValuesQueryStringAllowlist"></a>

Essa configuração aplica-se somente quando a opção **Encaminhar tudo, com base em cache na lista de permissões** é escolhida para [Encaminhamento e armazenamento em cache de strings de consulta](#DownloadDistValuesQueryString). É possível especificar os parâmetros da string de consulta que você deseja que o CloudFront use como base para o armazenamento em cache.

## Smooth Streaming
<a name="DownloadDistValuesSmoothStreaming"></a>

Escolha **Yes** (Sim) se quiser distribuir arquivos de mídia no formato Microsoft Smooth Streaming e não tiver um servidor IIS.

Escolha **No** (Não) se você tiver um servidor Microsoft IIS que deseja usar como origem para distribuir arquivos de mídia no formato Microsoft Smooth Streaming, ou se não estiver distribuindo arquivos de mídia do Smooth Streaming.

**nota**  
Se você especificar **Yes** (Sim), é possível distribuir outro conteúdo usando esse comportamento de cache se o conteúdo corresponder ao valor de **Path Pattern** (Padrão de caminho).

Para obter mais informações, consulte [Configurar vídeo sob demanda para o Microsoft Smooth Streaming](on-demand-video.md#on-demand-streaming-smooth).

## Restringir acesso do visualizador (usar URLs ou cookies assinados)
<a name="DownloadDistValuesRestrictViewerAccess"></a>

Se você quiser solicitações de objetos correspondentes a `PathPattern` para que esse comportamento de cache use URLs públicos, escolha **No**.

Se você quiser solicitações de objetos correspondentes a `PathPattern` para que esse comportamento de cache use signed URLs, escolha **Yes**. Em seguida, especifique as contas da AWS que você deseja usar para criar URLs assinados. Essas contas são conhecidas como assinantes confiáveis.

Para obter mais informações sobre assinantes confiáveis, consulte [Especificar os assinantes que podem criar URLs e cookies assinados](private-content-trusted-signers.md). 

## Signatários confiáveis
<a name="DownloadDistValuesTrustedSigners"></a>

Essa configuração aplica-se somente ao escolher **Sim** para **Restringir o acesso do visualizador (usar URLs ou cookies assinados)**.

Selecione quais contas da AWS você deseja usar como assinantes confiáveis para esse comportamento de cache:
+ **Self (Próprio):** use a conta na qual você está conectado no Console de gerenciamento da AWS como assinante confiável. Se você estiver conectado como um usuário do IAM, a conta da AWS associada será adicionada como assinante confiável. 
+ **Especificar contas:** insira números de conta para signatários confiáveis no campo **Números de contas da AWS**.

Para criar URLs assinados, uma conta da AWS deve ter pelo menos um par de chaves do CloudFront ativo.

**Importante**  
Se você está atualizando uma distribuição que já está usando para distribuir conteúdo, adicione assinantes confiáveis somente quando estiver pronto para começar a gerar signed URLs para seus objetos. Depois de adicionar assinantes confiáveis a uma distribuição, os usuários devem usar signed URLs para acessar os objetos correspondentes a `PathPattern` para esse comportamento de cache.

## Conta da AWSNúmeros de
<a name="DownloadDistValuesAWSAccountNumbers"></a>

Essa configuração aplica-se somente ao selecionar **Especificar contas** para **Signatários confiáveis**.

Se quiser criar signed URLs usando Contas da AWS além ou em vez da conta atual, insira um número de Conta da AWS por linha neste campo. Observe o seguinte:
+ As contas especificadas devem ter pelo menos um par de chaves do CloudFront ativo. Para obter mais informações, consulte [Criar pares de chaves para os assinantes](private-content-trusted-signers.md#private-content-creating-cloudfront-key-pairs).
+ Não é possível criar pares de chaves do CloudFront para usuários do IAM, portanto, você não pode usar usuários do IAM como assinantes confiáveis.
+ Consulte informações sobre como obter o número da Conta da AWS de uma conta em [View Conta da AWS identifiers](https://docs.aws.amazon.com/accounts/latest/reference/manage-acct-identifiers.html) no *Guia de referência de gerenciamento de Conta da AWS*.
+ Se você inserir o número da conta atual, o CloudFront marcará automaticamente a caixa de seleção **Próprio** e removerá o número da conta da lista **Números de conta da AWS**.

## Compactar objetos automaticamente
<a name="DownloadDistValuesCompressObjectsAutomatically"></a>

Se você desejar que o CloudFront compacte automaticamente arquivos de determinados tipos quando os visualizadores forem compatíveis com o conteúdo compactado, escolha **Yes (Sim)**. Quando o CloudFront compacta o conteúdo, os downloads são mais rápidos porque os arquivos são menores, e os sites são renderizados mais rapidamente para os usuários. Para obter mais informações, consulte [Fornecer arquivos compactados](ServingCompressedFiles.md).

## Evento do CloudFront
<a name="DownloadDistValuesEventType"></a>

Essa configuração aplica-se às **Associações de funções do Lambda**.

É possível optar por executar uma função do Lambda quando um ou mais dos seguintes eventos do CloudFront ocorrerem:
+ Quando o CloudFront receber uma solicitação de um visualizador (solicitação do visualizador)
+ Antes do CloudFront encaminhar uma solicitação para a origem (solicitação da origem)
+ Quando o CloudFront receber uma resposta da origem (resposta da origem)
+ Antes do CloudFront retornar a resposta para o visualizador (resposta do visualizador)

Para obter mais informações, consulte [Escolher o evento para acionar a função](lambda-how-to-choose-event.md).

## ARN da função do Lambda.
<a name="DownloadDistValuesLambdaFunctionARN"></a>

Essa configuração aplica-se às **Associações de funções do Lambda**.

Especifique o Nome de recurso da Amazon (ARN) da função do Lambda para a qual deseja adicionar um trigger. Para saber mais sobre como obter o ARN de uma função, consulte a etapa 1 do procedimento [Adicionar triggers usando o console do CloudFront](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/lambda-edge-add-triggers.html#lambda-edge-add-triggers-cf-console).

## Incluir corpo
<a name="include-body"></a>

Essa configuração aplica-se às **Associações de funções do Lambda**.

Consulte mais informações em [Acesso ao corpo da solicitação com escolha da opção de inclusão de corpo](lambda-generating-http-responses.md#lambda-include-body-access).

# Configurações de distribuição
<a name="DownloadDistValuesGeneral"></a>

Os valores a seguir se aplicam a toda a distribuição. 

**Topics**
+ [Classe de preço](#DownloadDistValuesPriceClass)
+ [AWS WAFACL da WEb do](#DownloadDistValuesWAFWebACL)
+ [Nomes de domínio alternativos (CNAMEs)](#DownloadDistValuesCNAME)
+ [Certificado SSL](#DownloadDistValuesSSLCertificate)
+ [Suporte ao cliente SSL personalizado](#DownloadDistValuesClientsSupported)
+ [Política de segurança (versão mínima de SSL/TLS)](#DownloadDistValues-security-policy)
+ [Versões de HTTP compatíveis](#DownloadDistValuesSupportedHTTPVersions)
+ [Objeto raiz padrão](#DownloadDistValuesDefaultRootObject)
+ [Registro em log padrão](#DownloadDistValuesLoggingOnOff)
+ [Logs de conexão](#DownloadDistValuesConnectionLogs)
+ [Prefixo de log](#DownloadDistValuesLogPrefix)
+ [Registro em log de cookies](#DownloadDistValuesCookieLogging)
+ [Habilitar IPv6 (solicitações do visualizador)](#DownloadDistValuesEnableIPv6)
+ [Autenticação mútua](#DownloadDistValuesMutualAuthentication)
+ [Habilitar IPv6 para origens personalizadas (solicitações de origem)](#DownloadDistValuesEnableIPv6-origin)
+ [Comment](#DownloadDistValuesComment)
+ [Estado de distribuição](#DownloadDistValuesEnabled)

## Classe de preço
<a name="DownloadDistValuesPriceClass"></a>

Escolha o preço que corresponde ao preço máximo que você está disposto a pagar pelo serviço do CloudFront. Por padrão, o CloudFront fornece seus objetos de pontos de presença em todas as regiões do CloudFront. 

Para ter mais informações sobre as classes de preço e como sua escolha de classe de preço afeta a performance do CloudFront para sua distribuição, consulte [Definição de preços do CloudFront](https://aws.amazon.com/cloudfront/pricing/).

## AWS WAFACL da WEb do
<a name="DownloadDistValuesWAFWebACL"></a>

Você pode proteger sua distribuição do CloudFront com o [AWS WAF](https://docs.aws.amazon.com/waf/latest/developerguide/what-is-aws-waf), um firewall de aplicações da Web que permite proteger suas aplicações e APIs da web para bloquear solicitações antes que elas cheguem aos servidores. Você pode usar o [Habilitar o AWS WAF para distribuições](WAF-one-click.md) ao criar ou editar uma distribuição do CloudFront.

Você também pode configurar posteriormente proteções de segurança adicionais para outras ameaças específicas de sua aplicação no console do AWS WAF em [https://console.aws.amazon.com/wafv2/](https://console.aws.amazon.com/wafv2/).

Para obter mais informações sobre o AWS WAF, consulte o [Guia do desenvolvedor do AWS WAF](https://docs.aws.amazon.com/waf/latest/developerguide/).

## Nomes de domínio alternativos (CNAMEs)
<a name="DownloadDistValuesCNAME"></a>

Opcional. Especifique um ou mais nomes de domínio que você deseja usar nas URLs de seus objetos em vez do nome de domínio atribuído pelo CloudFront ao criar sua distribuição. Você deve possuir o nome de domínio, ou ter autorização para usá-lo, o que você verifica adicionando um certificado SSL/TLS.

 Por exemplo, se você quiser que o URL do objeto:

`/images/image.jpg`

Seja parecido com:

`https://www.example.com/images/image.jpg`

Em vez de:

`https://d111111abcdef8.cloudfront.net/images/image.jpg`

Adicione um CNAME para `www.example.com`.

**Importante**  
Se você adicionar um CNAME para `www.example.com` à distribuição, também deverá fazer o seguinte:  
Crie (ou atualize) um registro CNAME no serviço de DNS para rotear consultas de `www.example.com` para `d111111abcdef8.cloudfront.net`.
Adicione um certificado ao CloudFront de uma autoridade de certificação (CA) confiável que abranja o nome de domínio (CNAME) que você adicionar à distribuição, para validar a autorização para usar o nome de domínio.
Você deve ter permissão para criar um registro CNAME com o provedor de serviço de DNS para o domínio. Normalmente, isso significa que você possui o domínio ou que está desenvolvendo um aplicativo para o proprietário do domínio.

Para saber o número máximo atual de nomes de domínio alternativos que podem ser adicionados a uma distribuição ou para solicitar uma cota maior (anteriormente conhecida como limite), consulte [Cotas gerais para distribuições](cloudfront-limits.md#limits-web-distributions).

Para obter mais informações sobre nomes de domínio alternativo, consulte [Usar URLs personalizados adicionando nomes de domínio alternativos (CNAMEs)](CNAMEs.md). Para mais informações sobre URLs do CloudFront, consulte [Personalizar o formato do URL para arquivos no CloudFront](LinkFormat.md).

## Certificado SSL
<a name="DownloadDistValuesSSLCertificate"></a>

Se você especificou um nome de domínio alternativo para usar com a distribuição, selecione **Custom SSL Certificate (Certificado SSL personalizado)** e, para validar a autorização para usar o nome de domínio alternativo, escolha um certificado que o abranja. Se você quiser que os visualizadores usem HTTPS para acessar seus objetos, escolha as configurações que oferecem suporte para isso. 
+ **Default CloudFront Certificate (Certificado padrão do CloudFront) (\$1.cloudfront.net)**: escolha essa opção se quiser usar o nome de domínio do CloudFront nos URLs para seus objetos, como `https://d111111abcdef8.cloudfront.net/image1.jpg`.
+ **Custom SSL Certificate (Certificado SSL personalizado)**: escolha essa opção se quiser usar seu próprio nome de domínio nos URLs dos seus objetos como um nome de domínio alternativo, por exemplo `https://example.com/image1.jpg`. Em seguida, escolha um certificado para usar que abranja o nome de domínio alternativo. A lista de certificados pode incluir qualquer um dos seguintes:
  + Certificados fornecidos pelo AWS Certificate Manager
  + Os certificados adquiridos de uma autoridade de certificação de terceiros e carregados no ACM
  + Os certificados adquiridos de autoridades de certificação de terceiros e carregados no armazenamento de certificados do IAM

  Se você escolher essa configuração, recomendamos que use apenas um nome de domínio alternativo nos URLs dos seus objetos (https://example.com/logo.jpg). Se você usar o nome de domínio da distribuição do CloudFront (https://d111111abcdef8.cloudfront.net/logo.jpg) e um cliente usar um visualizador mais antigo que não seja compatível com SNI, como o visualizador responderá vai depender do valor escolhido para **Clients Supported (Clientes compatíveis)**:
  + **All Clients (Todos os clientes)**: o visualizador exibe um aviso porque o nome de domínio do CloudFront não corresponde ao nome de domínio do certificado SSL/TLS.
  + **Only Clients that Support Server Name Indication (SNI) (Somente os clientes que oferecem suporte à indicação de nome de servidor (SNI))**: o CloudFront interrompe a conexão com o visualizador sem retornar o objeto.

## Suporte ao cliente SSL personalizado
<a name="DownloadDistValuesClientsSupported"></a>

Aplica-se somente quando você escolhe **Certificado SSL personalizado (exemplo.com)** para **Certificado SSL**. Se você especificou um ou mais nomes de domínio alternativos e um certificado SSL personalizado para a distribuição, defina como você deseja que o CloudFront atenda às solicitações HTTPS:
+ **Clientes que oferecem suporte a SNI (Indicação de nome de servidor) – (Recomendado)**: com essa configuração, praticamente todos os navegadores e clientes da Web modernos podem se conectar à distribuição, porque eles oferecem suporte a SNI. No entanto, alguns visualizadores podem usar navegadores da Web mais antigos ou clientes incompatíveis com SNI, o que significa que não conseguem se conectar à distribuição.

  Para aplicar essa configuração usando a API do CloudFront, especifique `sni-only` no campo `SSLSupportMethod`. No CloudFormation, o campo recebe o nome `SslSupportMethod` (observe o tamanho diferente das letras).
+ **Suporte de clientes herdados**: com essa configuração, navegadores da Web e clientes mais antigos incompatíveis com SNI podem se conectar à distribuição. No entanto, essa configuração gera cobranças mensais adicionais. Para saber o preço exato, acesse a página [Definição de preços do Amazon CloudFront](https://aws.amazon.com/cloudfront/pricing/) e pesquise **SSL personalizado de IP dedicado** na página.

  Para aplicar essa configuração usando a API do CloudFront, especifique `vip` no campo `SSLSupportMethod`. No CloudFormation, o campo recebe o nome `SslSupportMethod` (observe o tamanho diferente das letras).

Para obter mais informações, consulte [Escolher como o CloudFront atende a solicitações HTTPS](cnames-https-dedicated-ip-or-sni.md).

## Política de segurança (versão mínima de SSL/TLS)
<a name="DownloadDistValues-security-policy"></a>

Especifique a política de segurança que você deseja que o CloudFront use para conexões HTTPS com os visualizadores (clientes). Uma política de segurança determina duas configurações:
+ O protocolo SSL/TLS mínimo que o CloudFront usa para se comunicar com os visualizadores
+ A criptografia que o CloudFront pode usar para criptografar o conteúdo que retorna aos visualizadores.

Para mais informações sobre as políticas de segurança, incluindo os protocolos e as cifras que cada uma inclui, consulte [Protocolos e cifras compatíveis entre visualizadores e o CloudFront](secure-connections-supported-viewer-protocols-ciphers.md).

As políticas de segurança que estão disponíveis dependem dos valores que você especifica para o **SSL Certificate (Certificado SSL)** e o **Custom SSL Client Support (Suporte ao cliente SSL personalizado)** (conhecidos como `CloudFrontDefaultCertificate` e `SSLSupportMethod` na API do CloudFront):
+ Quando o **SSL Certificate (Certificado SSL)** for **Default CloudFront Certificate (\$1.cloudfront.net) (Certificado padrão do CloudFront (\$1.cloudfront.net))** (quando `CloudFrontDefaultCertificate` for `true` na API), o CloudFront definirá automaticamente a política de segurança como TLSv1.
+ Quando **Certificado SSL** for **Certificado SSL personalizado (example.com)** *e* **Suporte ao cliente SSL personalizado** for **Clientes que comportam a indicação de nome do servidor (SNI) – (Recomendado)** (quando `CloudFrontDefaultCertificate` for `false` *e* `SSLSupportMethod` for `sni-only` na API), você poderá escolher entre as seguintes políticas de segurança:
  + TLSv1.3\$12025
  + TLSv1.2\$12025
  + TLSv1.2\$12021
  + TLSv1.2\$12019
  + TLSv1.2\$12018
  + TLSv1.1\$12016
  + TLSv1\$12016
  + TLSv1
+ Quando **Certificado SSL** for **Certificado SSL personalizado (example.com)** *e* **Suporte ao cliente SSL personalizado** for **Suporte a clientes legados** (quando `CloudFrontDefaultCertificate` for `false` *e* `SSLSupportMethod` for `vip` na API), você poderá escolher entre as seguintes políticas de segurança:
  + TLSv1
  + SSLv3

  Nesta configuração, as políticas de segurança TLSv1.3\$12025, TLSv1.2\$12025, TLSv1.2\$12021, TLSv1.2\$12019, TLSv1.2\$12018, TLSv1.1\$12016 e TLSv1\$12016 não estão disponíveis no console do CloudFront nem na API. Se quiser utilizar uma dessas políticas de segurança, você terá as seguintes opções:
  + Avalie se a distribuição precisa de suporte a clientes legados com endereços IP dedicados. Se seus visualizadores comportarem a [indicação de nome de servidor (SNI)](https://en.wikipedia.org/wiki/Server_Name_Indication), recomendamos atualizar a definição **Suporte ao cliente SSL personalizado** de sua distribuição para **Clientes que comportam a indicação de nome de servidor (SNI)** (defina `SSLSupportMethod` como `sni-only` na API). Isso permite usar qualquer uma das políticas de segurança TLS disponíveis, e também pode reduzir as cobranças do CloudFront.
  + Se for necessário manter o suporte a clientes legados com endereços IP dedicados, será possível solicitar uma das outras políticas de segurança para o TLS (TLSv1.3\$12025, TLSv1.2\$12025, TLSv1.2\$12021, TLSv1.2\$12019, TLSv1.2\$12018, TLSv1.1\$12016 ou TLSv1\$12016) criando um caso no [AWS Support Center](https://console.aws.amazon.com/support/home).
**nota**  
Antes de entrar em contato com o AWS Support para solicitar essa alteração, considere o seguinte:  
Quando você adiciona uma dessas políticas de segurança (TLSv1.3\$12025, TLSv1.2\$12025, TLSv1.2\$12021, TLSv1.2\$12019, TLSv1.2\$12018, TLSv1.1\$12016 ou TLSv1\$12016) a uma distribuição de suporte a clientes legados, a política de segurança é aplicada a *todas* as solicitações de visualizador que não são de SNI para *todas* as distribuições de suporte a clientes legados em sua conta da AWS. No entanto, quando os visualizadores enviam solicitações SNI para uma distribuição com o Suporte a clientes legados, a política de segurança dessa distribuição se aplica. Para garantir que a política de segurança desejada seja aplicada a *todas* as solicitações do visualizador enviadas a *todas* as distribuições de suporte de clientes herdadas em sua conta da AWS, adicione a política de segurança desejada a cada distribuição individualmente.
Por definição, a nova política de segurança não é compatível com as mesmas criptografias e protocolos que a antiga. Por exemplo, se optar por atualizar a política de segurança de uma distribuição de TLSv1 para TLSv1.1\$12016, essa distribuição não será mais compatível com a criptografia DES-CBC3-SHA. Para mais informações sobre as cifras e os protocolos com os quais cada política de segurança é compatível, consulte [Protocolos e cifras compatíveis entre visualizadores e o CloudFront](secure-connections-supported-viewer-protocols-ciphers.md).

## Versões de HTTP compatíveis
<a name="DownloadDistValuesSupportedHTTPVersions"></a>

Escolha as versões HTTP às quais deseja que a distribuição ofereça suporte quando os visualizadores se comunicarem com o CloudFront. 

Para os visualizadores e o CloudFront usarem HTTP/3, os visualizadores devem ser compatíveis com TLSv1.2 ou posterior e com Server Name Indication (SNI).

Para os visualizadores e o CloudFront usarem HTTP/3, os visualizadores devem ser compatíveis com TLSv1.3 e com Server Name Indication (SNI). O CloudFront é compatível com a migração de conexão HTTP/3 para permitir que o visualizador alterne de rede sem perder a conexão. Para obter mais informações sobre migração de conexões, consulte [Connection Migration](https://www.rfc-editor.org/rfc/rfc9000.html#name-connection-migration) (Migração de conexões) no RFC 9000.

**nota**  
Para obter mais informações sobre as criptografias TLSv1.3 compatíveis, consulte [Protocolos e cifras compatíveis entre visualizadores e o CloudFront](secure-connections-supported-viewer-protocols-ciphers.md).

**nota**  
Se você usa o Amazon Route 53, pode usar registros HTTPS para permitir a negociação de protocolos como parte da consulta de DNS, caso o cliente ofereça suporte. Para obter mais informações, consulte [Create alias resource record set](CreatingCNAME.md#alternate-domain-https).

## Objeto raiz padrão
<a name="DownloadDistValuesDefaultRootObject"></a>

Opcional. O objeto que você deseja que o CloudFront solicite da sua origem (por exemplo, `index.html`) quando o visualizador solicitar o URL raiz da sua distribuição (`https://www.example.com/`), em vez de um objeto nela (`https://www.example.com/product-description.html`). A especificação de um objeto raiz padrão evita a exposição do conteúdo da distribuição. 

O tamanho máximo do nome é 255 caracteres. O nome pode conter espaços ou um destes caracteres:
+ A-Z, a-z
+ 0-9
+ \$1 - . \$1 \$1 / \$1 " '
+ &, passado e retornado como `&amp;`

Ao especificar o objeto raiz padrão, insira apenas o nome do objeto, por exemplo, `index.html`. Não adicione `/` antes do nome do objeto.

Para obter mais informações, consulte [Especificar um objeto raiz padrão](DefaultRootObject.md).

## Registro em log padrão
<a name="DownloadDistValuesLoggingOnOff"></a>

Especifique se você deseja que o CloudFront registre em log as informações sobre cada solicitação de um objeto e armazene os arquivos de log. É possível habilitar ou desabilitar o registro a qualquer momento. Não há custo adicional ao habilitar o registro em log, mas você pode incorrer em cobranças de armazenamento e acesso a arquivos. Você pode excluir os logs a qualquer momento. 

O CloudFront permite as seguintes opções de registro em log padrão:
+ [Registro em log padrão (v2)](standard-logging.md): você pode enviar logs a destinos de entrega, como Amazon CloudWatch Logs, Amazon Data Firehose e Amazon Simple Storage Service (Amazon S3).
+ [Registro em log padrão (legado)](AccessLogs.md): você só pode enviar logs a um bucket do Amazon S3.

## Logs de conexão
<a name="DownloadDistValuesConnectionLogs"></a>

Quando você ativa a [autenticação mútua](#DownloadDistValuesMutualAuthentication) para sua distribuição, o CloudFront fornece logs de conexão que capturam atributos sobre as solicitações enviadas às distribuições. Os logs de conexão contêm informações como o endereço IP e a porta do cliente, informações sobre o certificado do cliente, resultados da conexão e cifras TLS que estão sendo usadas. Esses logs de conexão podem então ser usados para analisar padrões de solicitação e outras tendências.

Para saber mais sobre os logs de conexão, consulte [Observabilidade por meio de logs de conexão](connection-logs.md).

## Prefixo de log
<a name="DownloadDistValuesLogPrefix"></a>

(Opcional) Se você habilitar o registro em log padrão (legado), especifique a string, se houver, a ser prefixada pelo CloudFront nos nomes de arquivo de log de acesso dessa distribuição; por exemplo, `exampleprefix/`. A barra no final (/) é opcional, mas recomendada para simplificar a navegação em seus arquivos de log. Para obter mais informações, consulte [Configurar o registro em log padrão (legado)](standard-logging-legacy-s3.md).

## Registro em log de cookies
<a name="DownloadDistValuesCookieLogging"></a>

Se você quiser que o CloudFront inclua cookies nos logs de acesso, escolha **On (Ativado)**. Se você optar por incluir cookies nos logs, o CloudFront registrará em log todos os cookies, independentemente da configuração dos comportamentos de cache dessa distribuição: encaminhar todos os cookies, nenhum cookie ou uma lista específica de cookies para a origem. 

O Amazon S3 não processa cookies, portanto, a menos que sua distribuição também inclua um Amazon EC2 ou outra origem personalizada, recomendamos que você escolha **Off (Desativado)** para o valor de **Cookie Logging (Registro em log de cookies)**.

Para obter mais informações sobre cookies, consulte [Conteúdo em cache com base em cookies](Cookies.md).

## Habilitar IPv6 (solicitações do visualizador)
<a name="DownloadDistValuesEnableIPv6"></a>

Se você quiser que o CloudFront responda às solicitações dos visualizadores de endereços IP IPv4 e IPv6, selecione **Habilitar IPv6**. Para obter mais informações, consulte [Habilitar IPv6 para distribuições do CloudFront](cloudfront-enable-ipv6.md).

## Autenticação mútua
<a name="DownloadDistValuesMutualAuthentication"></a>

Opcional. Você pode optar por ativar a autenticação mútua para sua distribuição do CloudFront. Para obter mais informações, consulte [Autenticação TLS mútua com o CloudFront (mTLS de visualizador)TLS mútua de origem com o CloudFront](mtls-authentication.md).

## Habilitar IPv6 para origens personalizadas (solicitações de origem)
<a name="DownloadDistValuesEnableIPv6-origin"></a>

Ao usar uma origem personalizada (excluindo as origens do Amazon S3 e da VPC), você pode personalizar as configurações de origem da sua distribuição para escolher como o CloudFront se conecta à sua origem usando endereços IPv4 ou IPv6. Para obter mais informações, consulte [Habilitar IPv6 para distribuições do CloudFront](cloudfront-enable-ipv6.md).

## Comment
<a name="DownloadDistValuesComment"></a>

Opcional. Ao criar uma distribuição, você pode incluir um comentário com até 128 caracteres. Você pode atualizá-lo qualquer momento.

## Estado de distribuição
<a name="DownloadDistValuesEnabled"></a>

Indica se você deseja que a distribuição seja ativada ou desativada após a implantação:
+ *Enabled*: assim que a distribuição for totalmente implantada, você poderá implantar links que usam o nome de domínio da distribuição, e os usuários poderão recuperar o conteúdo. Sempre que uma distribuição estiver ativada, o CloudFront aceitará e lidará com qualquer solicitação do usuário final de conteúdo que use o nome de domínio associado a essa distribuição. 

  Ao criar, modificar ou excluir uma distribuição do CloudFront, leva um tempo para que as alterações sejam propagadas para o banco de dados do CloudFront. Uma solicitação imediata de informações sobre uma distribuição pode não refletir a alteração. A propagação é normalmente concluída em minutos, mas uma alta carga do sistema ou partição de rede pode aumentar esse tempo. 
+ *Disabled*: mesmo que a distribuição possa ser implantada e esteja pronta para ser usada, os usuários não poderão usá-la. Sempre que uma distribuição estiver desativada, o CloudFront não aceitará nenhuma solicitação do usuário final que use o nome de domínio associado a essa distribuição. Enquanto você não alternar a distribuição de desativada para habilitada (atualizando a configuração dela), ninguém poderá usá-la.

Você pode alternar uma distribuição entre desativada e ativada sempre que desejar. Siga o processo de atualização da configuração de uma distribuição. Para obter mais informações, consulte [Atualizar uma distribuição](HowToUpdateDistribution.md).

# Páginas de erro personalizadas e erro de armazenamento em cache
<a name="DownloadDistValuesErrorPages"></a>

É possível solicitar que o CloudFront retorne um objeto para o visualizador (por exemplo, um arquivo HTML) quando o Amazon S3 ou a origem personalizada retornar um código de status HTTP 4xx ou 5xx para o CloudFront. Também é possível especificar o tempo de armazenamento no cache do CloudFront de uma resposta de erro da sua origem ou de uma página de erro personalizada. Para obter mais informações, consulte [Criar uma página de erro personalizada para códigos de status HTTP específicos](creating-custom-error-pages.md).

**nota**  
Os valores a seguir não são incluídos no assistente "Criar distribuição", portanto, você poderá configurar páginas de erro personalizadas somente quando atualizar uma distribuição.

**Topics**
+ [Código de erro HTTP](#DownloadDistValuesErrorCode)
+ [Caminho da página de resposta](#DownloadDistValuesResponsePagePath)
+ [Código de resposta HTTP](#DownloadDistValuesResponseCode)
+ [Erro ao armazenar TTL mínimo em cache (segundos)](#DownloadDistValuesErrorCachingMinTTL)

## Código de erro HTTP
<a name="DownloadDistValuesErrorCode"></a>

O código de status HTTP para o qual você deseja que o CloudFront retorne uma página de erro personalizada. É possível configurar o CloudFront para retornar páginas de erro personalizadas para nenhum, alguns ou todos os códigos de status HTTP armazenados em cache pelo CloudFront.

## Caminho da página de resposta
<a name="DownloadDistValuesResponsePagePath"></a>

O caminho para a página de erro personalizada (por exemplo, `/4xx-errors/403-forbidden.html`) que você deseja que o CloudFront retorne para um visualizador quando sua origem retorna o código de status HTTP especificado para **Error Code (Código de erro)** (por exemplo, 403). Se você quiser armazenar seus objetos e páginas de erro personalizadas em locais diferentes, sua distribuição deverá incluir um comportamento de cache para o qual o seguinte é verdadeiro:
+ O valor de **Path Pattern** é correspondente às suas mensagens de erro personalizadas. Por exemplo, imagine que você salvou páginas de erro personalizadas para erros 4xx em um bucket do Amazon S3 em um diretório denominado `/4xx-errors`. Sua distribuição deverá incluir um comportamento de cache para o qual o padrão de caminho roteia solicitações de suas páginas de erro personalizadas para esse local, por exemplo **/4xx-errors/\$1**. 
+ O valor de **Origin** especifica o valor de **Origin ID** da origem que contém suas páginas de erro personalizadas.

## Código de resposta HTTP
<a name="DownloadDistValuesResponseCode"></a>

O código de status HTTP que você deseja que o CloudFront retorne para o visualizador com a página de erro personalizada. 

## Erro ao armazenar TTL mínimo em cache (segundos)
<a name="DownloadDistValuesErrorCachingMinTTL"></a>

O tempo mínimo que você deseja que o CloudFront armazene em cache as respostas de erro do seu servidor de origem.

# Restrições geográficas
<a name="DownloadDistValuesEnableGeoRestriction"></a>

Se precisar impedir que usuários de alguns países acessem o conteúdo, configure a distribuição do CloudFront com uma **Lista de permissões** ou uma **Lista de bloqueio**. Não há custo adicional para configurar restrições geográficas. Para obter mais informações, consulte [Restringir a distribuição geográfica do conteúdo](georestrictions.md). 

# Testar uma distribuição
<a name="distribution-web-testing"></a>

Depois que criar a distribuição, o CloudFront saberá onde seu servidor de origem está, e você saberá o nome de domínio associado à distribuição. Para testar a distribuição, faça o seguinte:

1. Espere até que sua distribuição seja implantada.
   + Veja os **detalhes da** distribuição no console. Quando sua distribuição terminar a implantação, o campo **Last modified** (Última modificação) muda de **Deploying** (Implantando) para uma data e hora.

1. Crie links para seus objetos com o nome de domínio do CloudFront usando o procedimento a seguir. 

1. Teste os links. O CloudFront oferece os objetos para sua página da web ou aplicação.

## Criar links para seus objetos
<a name="distribution-create-object-links"></a>

Use o procedimento a seguir para criar links de teste para os objetos na distribuição web do CloudFront.<a name="distribution-web-testing-procedure"></a>

**Para criar links para objetos em uma distribuição na web**

1. Copie o código HTML a seguir em um novo arquivo, substitua *domain-name* pelo nome do domínio da sua distribuição e substitua *object-name* pelo nome do seu objeto.

   ```
   <html>
   <head>
   	<title>My CloudFront Test</title>
   </head>
   <body>
   	<p>My text content goes here.</p>
   	<p><img src="https://domain-name/object-name" alt="my test image"></p>
   </body>
   </html>
   ```

   Por exemplo, caso seu nome de domínio seja `d111111abcdef8.cloudfront.net` e seu objeto seja `image.jpg`, o URL do link será:

   `https://d111111abcdef8.cloudfront.net/image.jpg`.

   Se o objeto estiver em uma pasta no seu servidor de origem, a pasta também deverá ser incluída no URL. Por exemplo, se image.jpg estiver localizado na pasta de imagens em seu servidor de origem, o URL será: 

   `https://d111111abcdef8.cloudfront.net/images/image.jpg`

1. Salve o código HTML em um arquivo com extensão .html.

1. Abra a página da web em um navegador para garantir que o objeto possa ser visualizado.

O navegador retornará a página com o arquivo de imagem incorporado, fornecido pelo ponto de presença que o CloudFront determinou como apropriado para fornecer o objeto.

# Atualizar uma distribuição
<a name="HowToUpdateDistribution"></a>

No console do CloudFront, você vê as distribuições do CloudFront associadas à sua Conta da AWS, visualiza as configurações de uma distribuição e atualiza a maioria das configurações. Lembre-se de que as configurações que você fizer alterações não entrarão em vigor até que a distribuição seja propagada para os pontos de presença da AWS.

## Atualizar uma distribuição no console
<a name="update-distribution-console"></a>

Os procedimentos a seguir mostram como atualizar uma distribuição do CloudFront no console.

------
#### [ Multi-tenant ]<a name="HowToUpdateDistributionProcedure"></a>

**Como atualizar uma distribuição multilocatário**

1. Faça login no Console de gerenciamento da AWS e abra o console do CloudFront em [https://console.aws.amazon.com/cloudfront/v4/home](https://console.aws.amazon.com/cloudfront/v4/home).

1. Pesquise e escolha o ID da distribuição multilocatário.

1. Escolha a guia referente às configurações que você deseja atualizar.

1. Faça as atualizações e, em seguida, para salvá-las, escolha **Sim, editar**. Para ter mais informações sobre as configurações que você pode atualizar, consulte [Referência de configurações de distribuição predefinidas](template-preconfigured-origin-settings.md).

Também é possível atualizar uma distribuição usando a API do CloudFront:
+ Para atualizar uma distribuição, consulte [UpdateDistribution](https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_UpdateDistribution.html) na *Referência da API do Amazon CloudFront*.

**Importante**  
Ao atualizar uma distribuição, observe que são necessários vários outros campos que não são necessários ao criar uma distribuição. Para ajudar a garantir que todos os campos obrigatórios sejam incluídos quando você usar a API do CloudFront para atualizar uma distribuição, siga as etapas descritas em [UpdateDistribution](https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_UpdateDistribution.html) na *Referência de API do Amazon CloudFront*.

Para alterar a distribuição multilocatário de um locatário da distribuição, atualize o respectivo locatário. Você também atualiza o locatário da distribuição para atualizar o domínio, o certificado, as personalizações ou os valores de parâmetro desse locatário. Para obter mais detalhes sobre como atualizar o certificado de locatários de distribuição, consulte [Adicionar um domínio e um certificado (locatário da distribuição)](managed-cloudfront-certificates.md#vanity-domain-tls-tenant).

**Como atualizar um locatário de distribuição**

1. Faça login no Console de gerenciamento da AWS e abra o console do CloudFront em [https://console.aws.amazon.com/cloudfront/v4/home](https://console.aws.amazon.com/cloudfront/v4/home).

1. Em **SaaS** escolha **Locatários da distribuição**.

1. Pesquise o locatário da distribuição. Use o menu suspenso na barra de pesquisa para filtrar por domínio, nome, ID da distribuição, ID do certificado, ID do grupo de conexões ou ID da ACL da web.

1. Escolha o nome do locatário da distribuição.

1. Para atualizar **Detalhes** gerais, escolha **Editar**, faça as atualizações e selecione **Atualizar locatário da distribuição**.

1. Escolha a guia apropriada para quaisquer outras configurações a serem atualizadas, faça suas atualizações e salve-as. Para obter mais informações sobre as configurações de locatário de distribuição que podem ser personalizadas, consulte [Personalizações de locatários da distribuição](tenant-customization.md).

------
#### [ Standard ]

**Como atualizar uma distribuição padrão**

1. Faça login no Console de gerenciamento da AWS e abra o console do CloudFront em [https://console.aws.amazon.com/cloudfront/v4/home](https://console.aws.amazon.com/cloudfront/v4/home).

1. Selecione o ID de uma distribuição. A lista inclui todas as distribuições associadas à conta da AWS usada ao fazer login no console do CloudFront.

1. Para atualizar configurações gerais, escolha **Edit (Editar)**. Caso contrário, escolha a guia referente às configurações que você deseja atualizar.

1. Faça as alterações e escolha **Salvar alterações**. Para obter informações sobre os campos, consulte os seguintes tópicos: 
   + **General settings (Configurações gerais:** [Configurações de distribuição](DownloadDistValuesGeneral.md)
   + **Origin settings (Configurações de origem:** [Configurações de origem](DownloadDistValuesOrigin.md)
   + **Cache behavior settings (Configurações de comportamento de cache:** [Configurações de comportamento de cache](DownloadDistValuesCacheBehavior.md)

1. Se você deseja excluir uma origem em sua distribuição, faça o seguinte:

   1. Escolha **Comportamentos** e certifique-se de ter movido para outra origem todos os comportamentos de cache padrão associados à origem.

   1. Selecione **Origens**, depois selecione uma origem.

   1. Escolha **Delete**.

Também é possível atualizar uma distribuição usando a API do CloudFront:
+ Para atualizar uma distribuição, consulte [UpdateDistribution](https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_UpdateDistribution.html) na *Referência da API do Amazon CloudFront*.

**Importante**  
Ao atualizar sua distribuição, esteja ciente de que são necessários vários campos adicionais que não são necessários para criar uma distribuição. Para ajudar a garantir que todos os campos obrigatórios sejam incluídos quando você usar a API do CloudFront para atualizar uma distribuição, siga as etapas descritas em [UpdateDistribution](https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_UpdateDistribution.html) na *Referência de API do Amazon CloudFront*.

------

Ao salvar as alterações na configuração da sua distribuição, o CloudFront começará a propagá-las para todos os pontos de presença. Alterações de configuração sucessivas se propagam na respectiva ordem. Enquanto sua configuração não for atualizada em um ponto de presença, o CloudFront continuará fornecendo seu conteúdo desse local com base na configuração anterior. Após a atualização da sua configuração em um ponto de presença, o CloudFront imediatamente começará a fornecer seu conteúdo desse local com base na nova configuração.

Suas alterações não são propagadas para todos os locais de borda ao mesmo tempo. Enquanto o CloudFront propaga as alterações, não é possível determinar se um local da borda está fornecendo seu conteúdo com base na configuração anterior ou na nova configuração.

**nota**  
Em casos raros, quando um host ou link de rede é interrompido, parte do tráfego dos locatários da distribuição pode ser atendido usando as configurações mais antigas por um breve período até que as alterações se propaguem pela rede.

Para ver quando suas alterações são propagadas, veja os **detalhes** da distribuição no console. O campo **Última modificação** muda de **Implantando** para uma data e hora quando a implantação é concluída. 

# Marcar uma distribuição
<a name="tagging"></a>

Tags são palavras ou frases que podem ser usadas para identificar e organizar seus recursos da AWS. É possível adicionar várias tags a cada recurso, e cada tag inclui uma chave e um valor definidos por você. Por exemplo, a chave pode ser "domínio" e o valor pode ser "exemplo.com". Você pode pesquisar e filtrar seus recursos de acordo com as tags que adicionar. 

É possível usar tags com o CloudFront, como estes exemplos: 
+ Aplique permissões baseadas em tags a distribuições do CloudFront. Para obter mais informações, consulte [ABAC com o CloudFront](security_iam_service-with-iam.md#security_iam_service-with-iam-tags).
+ Monitore as informações de faturamento em categorias diferentes. Quando você aplica tags a distribuições do CloudFront ou a outros recursos da AWS (como instâncias do Amazon EC2 ou buckets do Amazon S3) e as ativa, a AWS gera um relatório de alocação de custos como um arquivo CSV (valores separado por vírgula) com seu uso e custos agregados por tags ativas. 

  É possível aplicar tags que representem categorias de negócios (como centros de custos, nomes de aplicativos ou proprietários) para organizar seus custos de vários serviços. Para obter mais informações sobre como usar tags para alocação de custos, consulte [Como usar tags de alocação de custo](https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html) no *Manual do usuário do AWS Billing*.

**Observações**  
Você pode marcar distribuições com tags, mas não pode marcar origin access identities ou invalidações com tags.
O [Editor de tags](https://docs.aws.amazon.com/ARG/latest/userguide/tag-editor.html) e os [Grupos de recursos](https://docs.aws.amazon.com/ARG/latest/userguide/resource-groups.html) não são compatíveis com o CloudFront no momento.
Para saber o número máximo atual de tags que podem ser adicionadas a uma distribuição, consulte [Cotas gerais](cloudfront-limits.md#limits-general). 

**Contents**
+ [Restrições de tags](#tagging-restrictions)
+ [Adicionar, editar e excluir tags para distribuições](#tagging-add-edit-delete)
+ [Marcação programática](#tagging-related-information)

## Restrições de tags
<a name="tagging-restrictions"></a>

As restrições básicas a seguir se aplicam a tags:
+ Consulte o número máximo de tags por distribuição em [Cotas gerais](cloudfront-limits.md#limits-general).
+ Comprimento máximo da chave: 128 caracteres Unicode
+ Comprimento máximo do valor: 256 caracteres Unicode
+ Valores válidos de chave e valor: a-z, A-Z, 0-9, espaço e os seguintes caracteres: \$1 . : / = \$1 - e @
+ As chaves e os valores de tags diferenciam maiúsculas de minúsculas
+ Não use `aws:` como prefixo para chaves do. O uso deste prefixo é reservado para a AWS.

## Adicionar, editar e excluir tags para distribuições
<a name="tagging-add-edit-delete"></a>

É possível usar o console do CloudFront para gerenciar tags para suas distribuições.<a name="tagging-add-edit-delete-procedure"></a>

**Para adicionar, editar ou excluir tags de uma distribuição**

1. Faça login no Console de gerenciamento da AWS e abra o console do CloudFront em [https://console.aws.amazon.com/cloudfront/v4/home](https://console.aws.amazon.com/cloudfront/v4/home).

1. Escolha o ID da distribuição que você deseja atualizar.

1. Escolha a guia **Tags**.

1. Selecione **Gerenciar tags**.

1. Na página **Gerenciar tags** é possível fazer o seguinte:
   + Para adicionar uma tag, insira uma chave e, se desejar, um valor para ela. Selecione **Adicionar nova tag** para adicionar mais tags.
   + Para editar uma etiqueta, modifique sua chave e/ou seu valor. Você pode excluir o valor de uma etiqueta, mas a chave é obrigatória.
   + Para excluir uma tag, escolha **Remove** (Remover).

1. Escolha **Salvar alterações**.

## Marcação programática
<a name="tagging-related-information"></a>

Também é possível usar a API do CloudFront, a AWS Command Line Interface (AWS CLI), SDKs da AWS e o AWS Tools for Windows PowerShell para aplicar tags. Para saber mais, consulte os seguintes tópicos:
+ Operações da API do CloudFront:
  + [ListTagsForResource](https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_ListTagsForResource.html) 
  + [TagResource](https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_TagResource.html) 
  + [UntagResource](https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_UntagResource.html) 
+ AWS CLI: consulte [cloudfront](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/cloudfront/index.html) na *Referência de comandos da AWS CLI*.
+ SDKs da AWS: consulte a documentação do SDK aplicável na página [Documentação da AWS](https://docs.aws.amazon.com/index.html).
+ Tools for Windows PowerShell: consulte [Amazon CloudFront](https://docs.aws.amazon.com/powershell/latest/reference/items/CloudFront_cmdlets.html) na [Referência de Cmdlet do Ferramentas da AWS para PowerShell](https://docs.aws.amazon.com/powershell/latest/reference/)

# Excluir uma distribuição
<a name="HowToDeleteDistribution"></a>

O procedimento a seguir exclui uma distribuição usando o console do CloudFront. Consulte informações sobre como excluir com a API do CloudFront em [DeleteDistribution](https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_DeleteDistribution.html) na *Referência da API do Amazon CloudFront*.

Se você precisar excluir uma distribuição com um OAC anexado a um bucket do S3, consulte [Excluir uma distribuição com um OAC anexado a um bucket do S3](private-content-restricting-access-to-s3.md#delete-oac-distribution-s3) para obter detalhes importantes.

**Atenção**  
Antes de excluir uma distribuição, você deverá desabilitá-la, o que requer permissão para atualizar a distribuição. Depois de excluída, a distribuição não poderá ser recuperada.
Se você desabilitar uma distribuição que tenha um nome de domínio alternativo associado a ela, o CloudFront deixará de aceitar o tráfego para esse nome de domínio (como www.exemplo.com), mesmo que outra distribuição tenha um nome de domínio alternativo com um caractere curinga (\$1) correspondente ao mesmo domínio (como \$1.exemplo.com).
Não é possível excluir uma distribuição que esteja inscrita em um [plano de preços fixos do CloudFront](flat-rate-pricing-plan.md). Você receberá um erro que diz: “You can't delete this distribution while it's subscribed to a pricing plan”. Você deve primeiro cancelar o plano de preços e, depois do ciclo de faturamento atual, excluir a distribuição.

------
#### [ Multi-tenant ]

Antes de excluir uma distribuição multilocatário, exclua todos os locatários associados a ela.<a name="HowToDeleteDistributionProcedure"></a>

**Como excluir uma distribuição multilocatário**

1. Faça login no Console de gerenciamento da AWS e abra o console do CloudFront em [https://console.aws.amazon.com/cloudfront/v4/home](https://console.aws.amazon.com/cloudfront/v4/home).

1. No painel direito do console do CloudFront, marque a caixa de seleção da distribuição multilocatário que você deseja excluir. 

1. Em **Locatários**, selecione e exclua todos os locatários associados da distribuição.

1. Escolha **Desabilitar** para desabilitar a distribuição e selecione **Desabilitar distribuição** para confirmar.

1. Espere até que o novo carimbo de data/hora apareça na coluna **Last modified** (Última modificação).
   + Pode levar alguns minutos para que o CloudFront propague a alteração para todos os locais da borda.

1. Escolha **Excluir** e **Excluir distribuição**.

**Como excluir um locatário de distribuição**

1. Faça login no Console de gerenciamento da AWS e abra o console do CloudFront em [https://console.aws.amazon.com/cloudfront/v4/home](https://console.aws.amazon.com/cloudfront/v4/home).

1. Em **SaaS** escolha **Locatários da distribuição**.

1. Pesquise o locatário da distribuição. Use o menu suspenso na barra de pesquisa para filtrar por domínio, nome, ID da distribuição, ID do certificado, ID do grupo de conexões ou ID da ACL da web.

1. Selecione o locatário de distribuição a ser excluído.

1. Escolha **Excluir locatário** e **Excluir locatário de distribuição**.

------
#### [ Standard ]

**Como excluir uma distribuição padrão**

1. Faça login no Console de gerenciamento da AWS e abra o console do CloudFront em [https://console.aws.amazon.com/cloudfront/v4/home](https://console.aws.amazon.com/cloudfront/v4/home).

1. No painel à direita do console do CloudFront, encontre a distribuição que você deseja excluir. 
   + Se a coluna **Status** exibir **Desabilitado**, vá para a Etapa 6.
   + Se **Status** exibir **Habilitado**, mas a distribuição ainda mostrar **Implantando** na coluna **Última modificação**, aguarde a conclusão da implantação para prosseguir para a Etapa 3.

1. No painel direito no console do CloudFront, marque a caixa de seleção da distribuição que você deseja excluir.

1. Selecione **Disable (Desabilitar)** para desabilitar a distribuição e selecione **Yes, Disable (Sim, desabilitar)** para confirmar. Em seguida, selecione **Close (Fechar)**.
   + O valor da coluna **Status** é imediatamente alterado para **Disabled** (Desabilitado).

1. Espere até que o novo carimbo de data/hora apareça na coluna **Last modified** (Última modificação).
   + Pode levar alguns minutos para que o CloudFront propague a alteração para todos os locais da borda.

1. Marque a caixa de seleção da distribuição que você deseja excluir.

1. Escolha **Delete** (Excluir), **Yes, Delete** (Sim, excluir).
   + Se a opção **Excluir** não estiver disponível, isso significa que o CloudFront ainda está propagando a alteração para os locais da borda. Espere até que o novo carimbo de data e hora apareça na coluna **Última modificação** e, depois, repita as etapas 6 e 7.

------

# Usar várias origens com distribuições do CloudFront
<a name="DownloadDistS3AndCustomOrigins"></a>

Ao criar uma distribuição, especifique a *origem* onde o CloudFront enviará solicitações para os arquivos. É possível usar vários tipos diferentes de origens com o CloudFront. Por exemplo, você pode usar um bucket do Amazon S3, um contêiner do MediaStore, um canal do MediaPackage, um Application Load Balancer ou um URL da função do AWS Lambda. Quando você cria uma distribuição do CloudFront, o CloudFront define automaticamente a maior parte das configurações da distribuição para você com base no tipo de origem do conteúdo. Para obter mais informações, consulte [Referência de configurações de distribuição predefinidas](template-preconfigured-origin-settings.md).

Se você tiver um Application Load Balancer, um Network Load Balancer ou uma instância do EC2 em uma sub-rede privada, poderá usá-los como origem de VPC. Com as origens de VPC, suas aplicações podem ser acessadas somente em uma sub-rede privada com uma distribuição do CloudFront, o que impede que elas fiquem acessíveis na internet pública. Para obter mais informações, consulte [Restringe o acesso com origens de VPC.](private-content-vpc-origins.md).

**nota**  
Você pode usar funções de borda para selecionar dinamicamente a origem apropriada para cada solicitação. Ao usar o CloudFront Functions ou o Lambda@Edge, você pode direcionar solicitações para diferentes origens com base em fatores como localização geográfica do visualizador, cabeçalhos da solicitação ou parâmetros da string de consulta. Para obter mais informações, consulte [Personalizar na borda com funções](edge-functions.md).

**Topics**
+ [Usar um bucket do Amazon S3](#using-s3-as-origin)
+ [Usar um contêiner do MediaStore ou um canal do MediaPackage](#concept_AWS_Media)
+ [Usar um Application Load Balancer](#concept_elb_origin)
+ [Usar um Network Load Balancer](#concept_nlb_origin)
+ [Usar um URL da função do Lambda](#concept_lambda_function_url)
+ [Usar o Amazon EC2 (ou outra origem personalizada)](#concept_CustomOrigin)
+ [Usar grupos de origem do CloudFront](#concept_origin_groups)
+ [Usar o Amazon API Gateway](#use-api-gate-way-origin)

## Usar um bucket do Amazon S3
<a name="using-s3-as-origin"></a>

Os tópicos a seguir descrevem as diferentes maneiras de usar um bucket do Amazon S3 como a origem de uma distribuição do CloudFront.

**Topics**
+ [Usar um bucket padrão do Amazon S3](#concept_S3Origin)
+ [Usar o Amazon S3 Object Lambda](#using-S3-Object-Lambda)
+ [Usar Pontos de Acesso Amazon S3](#using-S3-Access-Point)
+ [Usar um bucket do Amazon S3 configurado como um endpoint do site](#concept_S3Origin_website)
+ [Adicionar o CloudFront a um bucket existente do Amazon S3](#adding-cloudfront-to-s3)
+ [Mover um bucket do Amazon S3 para uma Região da AWS diferente](#move-s3-bucket-different-region)

### Usar um bucket padrão do Amazon S3
<a name="concept_S3Origin"></a>

Ao usar o Amazon S3 como origem para a distribuição, coloque os objetos que deseja que o CloudFront entregue em um bucket do Amazon S3. É possível usar qualquer método compatível com o Amazon S3 para colocar os objetos no Amazon S3. Por exemplo, você pode usar o console ou a API do Amazon S3 ou uma ferramenta de terceiros. É possível criar uma hierarquia no bucket para armazenar os objetos, da mesma forma que você faria com qualquer outro bucket padrão do Amazon S3.

Usar um bucket do Amazon S3 existente como seu servidor de origem do CloudFront não altera o bucket. Ainda é possível usá-lo normalmente como você faria para armazenar e acessar objetos do Amazon S3 no preço padrão do Amazon S3. Você será cobrado o valor normal do Amazon S3 para armazenar os objetos no bucket. Para obter mais informações sobre as cobranças para usar o CloudFront, consulte [Preço do Amazon CloudFront](https://aws.amazon.com/cloudfront/pricing/). Para obter mais informações sobre como usar o CloudFront com um bucket do S3 existente, consulte [Adicionar o CloudFront a um bucket existente do Amazon S3](#adding-cloudfront-to-s3).

**Importante**  
Para que seu bucket funcione com o CloudFront, o nome deve estar de acordo com os requisitos de nomenclatura do DNS. Para obter mais informações, acesse [Regras de atribuição de nomes de buckets](https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html) no *Manual do usuário do Amazon Simple Storage Service*.

Ao especificar um bucket do Amazon S3 como uma origem do CloudFront, recomendamos que você use o seguinte formato:

`bucket-name.s3.region.amazonaws.com`

Ao especificar o nome do bucket nesse formato, é possível usar os seguintes recursos do CloudFront:
+ Configure o CloudFront para se comunicar com o bucket do Amazon S3 usando SSL/TLS. Para obter mais informações, consulte [Usar HTTPS com o CloudFront](using-https.md).
+ Use um controle de acesso à origem para exigir que os visualizadores acessem seu conteúdo usando URLs do CloudFront, não do Amazon S3. Para obter mais informações, consulte [Restringir o acesso a uma origem do Amazon S3](private-content-restricting-access-to-s3.md).
+ Atualize o conteúdo do seu bucket enviando solicitações `POST` e `PUT` para o CloudFront. Para obter mais informações, consulte [Métodos HTTP](RequestAndResponseBehaviorS3Origin.md#RequestS3HTTPMethods) no tópico [Como o CloudFront processa e encaminha solicitações à sua origem do Amazon S3](RequestAndResponseBehaviorS3Origin.md#RequestBehaviorS3Origin).

Não especifique o bucket usando os seguintes formatos:
+ O estilo de caminho do Amazon S3: `s3.amazonaws.com/bucket-name`
+ O CNAME do Amazon S3

**nota**  
O CloudFront oferece suporte às origens do S3 usando qualquer classe de armazenamento, incluindo o S3 Intelligent-Tiering. Quando o CloudFront solicita objetos de uma origem do S3, os objetos são recuperados independentemente do nível de armazenamento em que residem atualmente. Usar o CloudFront com o S3 Intelligent-Tiering não afeta o desempenho nem a funcionalidade de sua distribuição. Para obter mais informações, consulte [Gerenciar os custos de armazenamento com o Amazon S3 Intelligent-Tiering](https://docs.aws.amazon.com/AmazonS3/latest/userguide/intelligent-tiering.html) no *Guia do usuário do Amazon Simple Storage Service*.

### Usar o Amazon S3 Object Lambda
<a name="using-S3-Object-Lambda"></a>

Quando você [cria um ponto de acesso do Object Lambda](https://docs.aws.amazon.com/AmazonS3/latest/userguide/olap-create.html), o Amazon S3 gera automaticamente um alias exclusivo para seu ponto de acesso do Object Lambda. É possível [usar esse alias](https://docs.aws.amazon.com/AmazonS3/latest/userguide/olap-use.html#ol-access-points-alias) em vez de um nome de bucket do Amazon S3 como uma origem de sua distribuição do CloudFront.

Ao usar um alias de ponto de acesso do Object Lambda como uma origem do CloudFront, recomendamos que você use o seguinte formato:

`alias.s3.region.amazonaws.com`

Para obter informações sobre como encontrar o `alias`, consulte [Como usar um alias em estilo de bucket para seu ponto de acesso do S3 Object Lambda](https://docs.aws.amazon.com/AmazonS3/latest/userguide/olap-use.html#ol-access-points-alias) no *Guia do usuário do Amazon S3*.

**Importante**  
Ao usar um ponto de acesso do Object Lambda como origem para o CloudFront, você deverá usar o [controle de acesso de origem](private-content-restricting-access-to-s3.md).

Para ver um exemplo de caso de uso, consulte [Usar o Amazon S3 Object Lambda com o Amazon CloudFront para personalizar o conteúdo para usuários finais](https://aws.amazon.com/blogs/aws/new-use-amazon-s3-object-lambda-with-amazon-cloudfront-to-tailor-content-for-end-users/).

O CloudFront trata uma origem de ponto de acesso do Object Lambda da mesma forma que [uma origem de bucket padrão do Amazon S3](#concept_S3Origin).

As quatro permissões a seguir devem ser configuradas ao usar o Amazon S3 Object Lambda como origem para sua distribuição.

------
#### [ Object Lambda Access Point ]

**Para adicionar permissões para o ponto de acesso Object Lambda**

1. Faça login no Console de gerenciamento da AWS e abra o console do Amazon S3 em [https://console.aws.amazon.com/s3/](https://console.aws.amazon.com/s3/).

1. No painel de navegação à esquerda, escolha **Pontos de Acesso Object Lambda**.

1. Escolha o Ponto de Acesso Object Lambda que deseja usar.

1. Escolha a aba **Permissões**.

1. Escolha **Editar** na seção **Política de ponto de acesso do Object Lambda**.

1. Cole a **política** a seguir no campo Política.

------
#### [ JSON ]

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Effect": "Allow",
               "Principal": {
                   "Service": "cloudfront.amazonaws.com"
               },
               "Action": "s3-object-lambda:Get*",
               "Resource": "arn:aws:s3-object-lambda:us-east-1:123456789012:accesspoint/Object-Lambda-Access-Point-name",
               "Condition": {
                   "StringEquals": {
                       "aws:SourceArn": "arn:aws:cloudfront::123456789012:distribution/CloudFront-distribution-ID"
                   }
               }
           }
       ]
   }
   ```

------

1. Escolha **Salvar alterações**.

------
#### [ Amazon S3 Access Point ]

**Para adicionar permissões para o Ponto de Acesso Amazon S3**

1. Faça login no Console de gerenciamento da AWS e abra o console do Amazon S3 em [https://console.aws.amazon.com/s3/](https://console.aws.amazon.com/s3/).

1. No painel de navegação, escolha **Pontos de acesso**.

1. Escolha o Ponto de Acesso Amazon S3 que deseja usar.

1. Escolha a aba **Permissões**.

1. Escolha **Editar** na seção **Política de ponto de acesso**.

1. Cole a política a seguir no campo **Política**.

------
#### [ JSON ]

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Id": "default",
       "Statement": [
           {
               "Sid": "s3objlambda",
               "Effect": "Allow",
               "Principal": {
                   "Service": "cloudfront.amazonaws.com"
               },
               "Action": "s3:*",
               "Resource": [
                   "arn:aws:s3:us-east-1:123456789012:accesspoint/Access-Point-name",
                   "arn:aws:s3:us-east-1:123456789012:accesspoint/Access-Point-name/object/*"
               ],
               "Condition": {
                   "ForAnyValue:StringEquals": {
                       "aws:CalledVia": "s3-object-lambda.amazonaws.com"
                   }
               }
           }
       ]
   }
   ```

------

1. Escolha **Salvar**.

------
#### [ Amazon S3 bucket ]

**Como adicionar permissões para o bucket do Amazon S3**

1. Faça login no Console de gerenciamento da AWS e abra o console do Amazon S3 em [https://console.aws.amazon.com/s3/](https://console.aws.amazon.com/s3/).

1. No painel de navegação, escolha **Buckets**.

1. Escolha o bucket do Amazon S3 que deseja usar.

1. Escolha a aba **Permissões**.

1. Na seção **Política do bucket**, escolha **Editar**.

1. Cole a política a seguir no campo **Política**.

------
#### [ JSON ]

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Effect": "Allow",
               "Principal": {
                   "AWS": "*"
               },
               "Action": "*",
               "Resource": [
                   "arn:aws:s3:::bucket-name",
                   "arn:aws:s3:::bucket-name/*"
               ],
               "Condition": {
                   "StringEquals": {
                       "s3:DataAccessPointAccount": "AWS-account-ID"
                   }
               }
           }
       ]
   }
   ```

------

1. Escolha **Salvar alterações**.

------
#### [ AWS Lambda function ]

**Como adicionar permissões para a função do Lambda**

1. Faça login no Console de gerenciamento da AWS e abra o console do AWS Lambda em [https://console.aws.amazon.com/lambda/](https://console.aws.amazon.com/lambda/).

1. Selecione **Funções** no painel de navegação.

1. Escolha a função do AWS Lambda que deseja publicar.

1. Escolha a guia **Configuração** e, depois, **Permissões**.

1. Escolha **Adicionar permissões** na seção **Declarações de políticas baseadas em recursos**.

1. Selecione **Conta da AWS**.

1. Insira um nome para o **ID da declaração**.

1. Insira `cloudfront.amazonaws.com` em **Entidade principal**.

1. Escolha `lambda:InvokeFunction` no menu suspenso **Ação**.

1. Escolha **Salvar**.

------

### Usar Pontos de Acesso Amazon S3
<a name="using-S3-Access-Point"></a>

Quando você [usa um ponto de acesso do S3](https://docs.aws.amazon.com/AmazonS3/latest/userguide/creating-access-points.html), o Amazon S3 gera um alias exclusivo para você. É possível usar esse alias em vez de um nome de bucket do Amazon S3 como uma origem de sua distribuição do CloudFront.

Ao usar um alias de Ponto de Acesso Amazon S3 como uma origem do CloudFront, recomendamos que você use o seguinte formato:

`alias.s3.region.amazonaws.com`

Para ter mais informações sobre como encontrar o `alias`, consulte [Usar um alias em estilo de bucket para seu ponto de acesso do S3](https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-points-alias.html) no *Guia do usuário do Amazon S3*.

**Importante**  
Ao usar um Ponto de Acesso Amazon S3 como origem para o CloudFront, você deverá usar o [controle de acesso à origem](private-content-restricting-access-to-s3.md).

O CloudFront trata uma origem de Ponto de Acesso Amazon S3 da mesma forma que [uma origem de bucket padrão do Amazon S3](#concept_S3Origin).

As duas permissões a seguir devem ser configuradas ao usar o Amazon S3 Object Lambda como origem para sua distribuição.

------
#### [ Amazon S3 Access Point ]

**Para adicionar permissões para o Ponto de Acesso Amazon S3**

1. Faça login no Console de gerenciamento da AWS e abra o console do Amazon S3 em [https://console.aws.amazon.com/s3/](https://console.aws.amazon.com/s3/).

1. No painel de navegação, escolha **Pontos de acesso**.

1. Escolha o Ponto de Acesso Amazon S3 que deseja usar.

1. Escolha a aba **Permissões**.

1. Escolha **Editar** na seção **Política de ponto de acesso**.

1. Cole a política a seguir no campo **Política**.

------
#### [ JSON ]

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Id": "default",
       "Statement": [
           {
               "Sid": "s3objlambda",
               "Effect": "Allow",
               "Principal": {"Service": "cloudfront.amazonaws.com"},
               "Action": "s3:*",
               "Resource": [
                   "arn:aws:s3:us-east-1:123456789012:accesspoint/Access-Point-name",
                   "arn:aws:s3:us-east-1:123456789012:accesspoint/Access-Point-name/object/*"
               ],
               "Condition": {
                   "StringEquals": {"aws:SourceArn": "arn:aws:cloudfront::123456789012:distribution/CloudFront-distribution-ID"}
               }
           }
       ]
   }
   ```

------

1. Escolha **Salvar**.

------
#### [ Amazon S3 bucket ]

**Como adicionar permissões para o bucket do Amazon S3**

1. Faça login no Console de gerenciamento da AWS e abra o console do Amazon S3 em [https://console.aws.amazon.com/s3/](https://console.aws.amazon.com/s3/).

1. No painel de navegação, escolha **Buckets**.

1. Escolha o bucket do Amazon S3 que deseja usar.

1. Escolha a aba **Permissões**.

1. Na seção **Política do bucket**, escolha **Editar**.

1. Cole a política a seguir no campo **Política**.

------
#### [ JSON ]

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Effect": "Allow",
               "Principal": {
                   "AWS": "*"
               },
               "Action": "*",
               "Resource": [
                   "arn:aws:s3:::bucket-name",
                   "arn:aws:s3:::bucket-name/*"
               ],
               "Condition": {
                   "StringEquals": {
                       "s3:DataAccessPointAccount": "AWS-account-ID"
                   }
               }
           }
       ]
   }
   ```

------

1. Escolha **Salvar alterações**.

------

### Usar um bucket do Amazon S3 configurado como um endpoint do site
<a name="concept_S3Origin_website"></a>

É possível usar um bucket do Amazon S3 configurado como um endpoint de site como uma origem personalizada com o CloudFront. Ao configurar a distribuição do CloudFront, para a origem, insira o endpoint de hospedagem de site estático do Amazon S3 para seu bucket. Esse valor é exibido no [console do Amazon S3](https://console.aws.amazon.com/s3/), na guia **Properties** (Propriedades), no painel **Static website hosting** (Hospedagem de site estático). Por exemplo:

`http://bucket-name.s3-website-region.amazonaws.com`

Para obter mais informações sobre como especificar endpoints de site estáticos do Amazon S3, consulte [Endpoints de site](https://docs.aws.amazon.com/AmazonS3/latest/userguide/WebsiteEndpoints.html) no *Manual do usuário do Amazon Simple Storage Service*.

Ao especificar o nome do bucket nesse formato como sua origem, é possível usar redirecionamentos e documentos de erro personalizados do Amazon S3. Para obter mais informações, consulte [Configurar um documento de erro personalizado](https://docs.aws.amazon.com/AmazonS3/latest/userguide/CustomErrorDocSupport.html) e [Configurar um redirecionamento](https://docs.aws.amazon.com/AmazonS3/latest/userguide/how-to-page-redirect.html) no *Guia do usuário do Amazon Simple Storage Service*. (O CloudFront também fornece páginas de erro personalizadas. Para obter mais informações, consulte [Criar uma página de erro personalizada para códigos de status HTTP específicos](creating-custom-error-pages.md).)

Usar um bucket do Amazon S3 como servidor de origem do CloudFront não o altera o bucket de forma alguma. Ainda é possível usá-lo como você faria normalmente e o Amazon S3 será cobrado pelos valores normais. Para obter mais informações sobre as cobranças para usar o CloudFront, consulte [Preço do Amazon CloudFront](https://aws.amazon.com/cloudfront/pricing/).

**nota**  
Se usar a API do CloudFront para criar sua distribuição com um bucket do Amazon S3 que está configurado como o endpoint de um site, você deverá configurá-lo usando `CustomOriginConfig`, mesmo que o site esteja hospedado em um bucket do Amazon S3. Para mais informações sobre a criação de distribuições usando a API do CloudFront, consulte [CreateDistribution](https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_CreateDistribution.html) na *Referência da API do Amazon CloudFront*.

### Adicionar o CloudFront a um bucket existente do Amazon S3
<a name="adding-cloudfront-to-s3"></a>

Se armazenar os objetos em um bucket do Amazon S3, você poderá fazer com que os usuários os obtenham diretamente no S3 ou poderá configurar o CloudFront para obtê-los no S3 e distribuí-los para seus usuários. Usar o CloudFront pode ser mais econômico se os seus usuários acessarem seus objetos com frequência. Com um uso maior, o preço da transferência de dados do CloudFront é menor que o do Amazon S3. Além disso, os downloads são mais rápidos com o CloudFront do que só com o Amazon S3 porque seus objetos são armazenados mais próximos dos usuários.

**nota**  
Se quiser que o CloudFront respeite as configurações de compartilhamento de recursos entre origens do Amazon S3, configure o CloudFront para encaminhar o cabeçalho `Origin` para o Amazon S3. Para obter mais informações, consulte [Conteúdo em cache com base nos cabeçalhos de solicitação](header-caching.md).

Se, no momento, você distribui conteúdo diretamente do bucket do Amazon S3 usando seu próprio nome de domínio (como example.com) em vez do nome de domínio do bucket do Amazon S3 (como amzn-s3-demo-bucket.s3.us-west-2.amazonaws.com), é possível adicionar o CloudFront sem interrupção usando o procedimento a seguir.<a name="migrate-s3-to-cloudfront-process"></a>

**Como adicionar o CloudFront quando você já estiver distribuindo seu conteúdo pelo Amazon S3**

1. Crie uma distribuição na do CloudFront. Para obter mais informações, consulte [Criar uma distribuição](distribution-web-creating-console.md).

   Ao criar a distribuição, especifique o nome do seu bucket do Amazon S3 como o servidor de origem.
**Importante**  
Para que seu bucket funcione com o CloudFront, o nome deve estar de acordo com os requisitos de nomenclatura do DNS. Para obter mais informações, acesse [Regras de atribuição de nomes de buckets](https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html) no *Manual do usuário do Amazon Simple Storage Service*.

   Se estiver usando um CNAME com o Amazon S3, especifique-o para a distribuição.

1. Crie uma página da web de teste que contenha links para objetos publicamente legíveis no bucket do Amazon S3 e teste os links. Para esse teste inicial, use o nome de domínio do CloudFront da distribuição nos URLs dos objetos, por exemplo, `https://d111111abcdef8.cloudfront.net/images/image.jpg`.

   Para mais informações sobre o formato dos URLs do CloudFront, consulte [Personalizar o formato do URL para arquivos no CloudFront](LinkFormat.md).

1. Se estiver usando CNAMEs do Amazon S3, a aplicação usará seu nome de domínio (por exemplo, exemplo.com) para fazer referência aos objetos do bucket do Amazon S3, em vez de usar o nome do bucket (por exemplo, amzn-s3-demo-bucket.s3.amazonaws.com). Para continuar usando seu nome de domínio para fazer referência aos objetos, em vez do nome de domínio do CloudFront para sua distribuição (por exemplo, d111111abcdef8.cloudfront.net), é necessário atualizar as configurações com seu provedor de serviço de DNS.

   Para que os CNAMEs do Amazon S3 funcionem, o provedor de serviço de DNS deve ter um conjunto de registros de recurso CNAME para seu domínio que encaminhe consultas para o domínio do seu bucket do Amazon S3. Por exemplo, se um usuário solicitar este objeto:

   `https://example.com/images/image.jpg`

   A solicitação será roteada novamente de forma automática, e o usuário verá este objeto:

   `https://amzn-s3-demo-bucket.s3.amazonaws.com/images/image.jpg`

   Para rotear consultas para a distribuição do CloudFront, em vez do bucket do Amazon S3, use o método fornecido por seu provedor de serviço de DNS para atualizar o conjunto de registros de recurso CNAME do seu domínio. Esse registro CNAME atualizado redirecionará as consultas de DNS do domínio para o nome de domínio do CloudFront da distribuição. Para obter mais informações, consulte a documentação fornecida por seu provedor de serviço de DNS.
**nota**  
Se estiver usando o Route 53 como o serviço de DNS, você poderá usar um conjunto de registros de recurso CNAME ou um conjunto de registros de recurso de alias. Para obter informações sobre como editar conjuntos de registros do recurso, consulte [Editar registros](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/resource-record-sets-editing.html). Para obter informações sobre conjuntos de registros do recurso de alias, consulte [Escolher entre registros de alias e não alias](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/resource-record-sets-choosing-alias-non-alias.html). Ambos os tópicos estão no *Guia do desenvolvedor do Amazon Route 53*.

   Para mais informações sobre como usar CNAMEs com o CloudFront, consulte [Usar URLs personalizados adicionando nomes de domínio alternativos (CNAMEs)](CNAMEs.md).

   Depois de atualizar o conjunto de registros de recurso CNAME, pode levar até 72 horas para que as alterações sejam propagadas em todo o sistema DNS, embora normalmente ocorra mais rápido. Durante esse período, algumas solicitações do seu conteúdo continuarão sendo roteadas para o bucket do Amazon S3 e outras serão direcionadas para o CloudFront.

### Mover um bucket do Amazon S3 para uma Região da AWS diferente
<a name="move-s3-bucket-different-region"></a>

Se estiver usando o Amazon S3 como a origem de uma distribuição do CloudFront e mover o bucket para uma Região da AWS diferente, o CloudFront poderá levar até uma hora para atualizar os registros para usar uma nova região quando ocorrer ambas as situações:
+ Você estiver usando uma identidade de acesso de origem (OAI) do CloudFront para restringir o acesso ao bucket
+ Você mover o bucket para uma região do Amazon S3 que requer o Signature versão 4 para autenticação.

Quando estiver usando OAIs, o CloudFront você usará a região (entre outros valores) para calcular a assinatura usada para solicitar objetos do seu bucket. Para obter mais informações sobre OAIs, consulte [Usar uma identidade de acesso à origem (herdada, não recomendado)](private-content-restricting-access-to-s3.md#private-content-restricting-access-to-s3-oai). Para obter uma lista de Regiões da AWS compatíveis com o Signature versão 2, consulte [Processo de assinatura do Signature versão 2](https://docs.aws.amazon.com/general/latest/gr/signature-version-2.html) na *Referência geral da Amazon Web Services*.

Para forçar uma atualização mais rápida dos registros do CloudFront, é possível atualizar a distribuição do CloudFront, por exemplo, atualizando o campo **Description** (Descrição) na guia **General (Geral)** do console do CloudFront. Quando você atualiza uma distribuição, o CloudFront verifica imediatamente a região em que o bucket está. A propagação da alteração para todos os locais de borda deve levar apenas alguns minutos.

## Usar um contêiner do MediaStore ou um canal do MediaPackage
<a name="concept_AWS_Media"></a>

Para fazer uma transmissão de vídeo usando o CloudFront, é possível configurar um bucket do Amazon S3 definido como um contêiner do MediaStore, ou criar um canal e endpoints com o MediaPackage. Depois, você poderá criar e configurar uma distribuição no CloudFront para transmitir o vídeo.

Para obter mais informações e instruções de todas as etapas, consulte os tópicos a seguir:
+ [Distribuir vídeo usando o AWS Elemental MediaStore como origem](live-streaming.md#video-streaming-mediastore)
+ [Veicular vídeo ao vivo formatado com o AWS Elemental MediaPackage](live-streaming.md#live-streaming-with-mediapackage)

## Usar um Application Load Balancer
<a name="concept_elb_origin"></a>

Você pode usar o CloudFront para rotear o tráfego para os Application Load Balancers internos e voltados para a internet.

Se a origem for um ou mais servidores HTTP(S) (servidores web) hospedados em uma ou mais instâncias do Amazon EC2, você poderá escolher um Application Load Balancer voltado para a internet e distribuir o tráfego para as instâncias. Um balanceador de carga voltado para a internet tem um nome de DNS que pode ser resolvido publicamente e roteia solicitações de clientes até destinos na internet.

Para ter mais informações sobre como usar um Application Load Balancer voltado para a internet como a origem para o CloudFront, incluindo como garantir que os visualizadores só possam acessar os servidores web por meio do CloudFront e não acessando o balanceador de carga diretamente, consulte [Restringir o acesso aos Application Load Balancers](restrict-access-to-load-balancer.md).

Também é possível usar origens de VPC para fornecer conteúdo de aplicações que estão hospedadas com um Application Load Balancer interno em sub-redes privadas da nuvem privada virtual (VPC). As origens de VPC impedem que a aplicação fique acessível na internet pública. Para obter mais informações, consulte [Restringe o acesso com origens de VPC.](private-content-vpc-origins.md).

## Usar um Network Load Balancer
<a name="concept_nlb_origin"></a>

Você pode usar Network Load Balancers internos e voltados para a internet com o Amazon CloudFront. Também é possível usar Network Load Balancers internos em sub-redes privadas com o CloudFront utilizando origens de VPC. As origens de VPC do CloudFront permitem que você forneça conteúdo de aplicações hospedadas em sub-redes VPC privadas sem as expor à internet pública. Para obter mais informações, consulte [Restringe o acesso com origens de VPC.](private-content-vpc-origins.md).

Também é possível usar o CloudFront para fornecer tráfego de Network Load Balancers voltados para a internet. Um balanceador de carga voltado para a internet tem um nome de DNS que pode ser resolvido publicamente e receber solicitações de clientes na internet e de distribuições do CloudFront.

## Usar um URL da função do Lambda
<a name="concept_lambda_function_url"></a>

Um [URL da função do Lambda](https://docs.aws.amazon.com/lambda/latest/dg/lambda-urls.html) é um endpoint HTTPS dedicado para uma função do Lambda. É possível usar um URL da função do Lambda para criar uma aplicação web sem servidor inteiramente dentro do Lambda. Você pode invocar a aplicação Web do Lambda diretamente por meio do URL da função, sem a necessidade de se integrar ao API Gateway ou a um Application Load Balancer.

Se criar uma aplicação web sem servidor usando funções do Lambda com URLs da função, você poderá adicionar o CloudFront para obter os seguintes benefícios:
+ Acelerar a aplicação armazenando conteúdo em cache mais próximo dos visualizadores
+ Usar um nome de domínio personalizado para a aplicação Web
+ Encaminhar diferentes caminhos de URL para diferentes funções do Lambda usando comportamentos de cache do CloudFront
+ Bloquear solicitações específicas usando restrições geográficas do CloudFront ou o AWS WAF (ou ambos)
+ Usar o AWS WAF com o CloudFront para ajudar a proteger a aplicação contra bots mal-intencionados, ajudar a evitar violações comuns de aplicações e aprimorar a proteção contra ataques DDoS

Para usar um URL da função do Lambda como a origem de uma distribuição do CloudFront, especifique o nome de domínio completo do URL da função do Lambda como o domínio de origem. Um nome de domínio do URL da função do Lambda usa o seguinte formato:

`function-URL-ID.lambda-url.AWS-Region.on.aws`

Ao usar um URL da função do Lambda como origem para uma distribuição do CloudFront, o URL da função deve estar acessível publicamente. Para fazer isso, use uma destas opções:
+ Se você usa o controle de acesso à origem (OAC), o parâmetro `AuthType` do URL da função do Lambda deve usar o valor `AWS_IAM` e autorizar as permissões `lambda:InvokeFunctionUrl` e `lambda:InvokeFunction` em uma política baseada em recursos. Consulte mais informações sobre como usar URLs de função do Lambda para OAC em [Restringir o acesso a uma origem do URL de função do AWS Lambda](private-content-restricting-access-to-lambda.md).
+ Se não usar o OAC, você poderá definir o parâmetro `AuthType` do URL da função como `NONE` e autorizar a permissão `lambda:InvokeFunctionUrl` em uma política baseada em recurso.



Também é possível [adicionar um cabeçalho de origem personalizado](add-origin-custom-headers.md) às solicitações que o CloudFront envia à origem e escrever o código da função para retornar uma resposta de erro caso o cabeçalho não esteja presente na solicitação. Isso ajuda a garantir que os usuários só possam acessar a aplicação Web por meio do CloudFront, e não usar diretamente o URL da função do Lambda.

Para obter mais informações sobre os URLs de função do Lambda, consulte os seguintes tópicos no *Guia do desenvolvedor do AWS Lambda*:
+ [URLs da função do Lambda](https://docs.aws.amazon.com/lambda/latest/dg/lambda-urls.html): uma visão geral do recurso de URLs da função do Lambda
+ [Chamar URLs da função do Lambda](https://docs.aws.amazon.com/lambda/latest/dg/urls-invocation.html): inclui detalhes sobre as cargas úteis de solicitação e resposta a serem usadas para codificar a aplicação Web sem servidor
+ [Modelo de segurança e autenticação para URLs de função do Lambda](https://docs.aws.amazon.com/lambda/latest/dg/urls-auth.html): inclui detalhes sobre os tipos de autenticação do Lambda

## Usar o Amazon EC2 (ou outra origem personalizada)
<a name="concept_CustomOrigin"></a>

Você pode usar instâncias do EC2 internas e voltadas para a internet com o Amazon CloudFront. Também é possível instâncias do EC2 internas em sub-redes privadas com o CloudFront utilizando origens de VPC. As origens de VPC do CloudFront permitem que você forneça conteúdo de aplicações hospedadas em sub-redes VPC privadas sem as expor à internet pública. Para obter mais informações, consulte [Restringe o acesso com origens de VPC.](private-content-vpc-origins.md).

Uma origem personalizada é um servidor web HTTP(S) com um nome DNS que pode ser resolvido publicamente e encaminha solicitações de clientes a destinos pela internet. O servidor HTTP(S) pode ser hospedado na AWS (por exemplo, uma instância do Amazon EC2) ou em outro local. Uma origem do Amazon S3 configurada como um endpoint do site também é considerada como uma origem personalizada. Para obter mais informações, consulte [Usar um bucket do Amazon S3 configurado como um endpoint do site](#concept_S3Origin_website).

Ao usar seu próprio servidor HTTP como uma origem personalizada, especifique o nome DNS do servidor, além das portas HTTP e HTTPS e o protocolo que o CloudFront deve usar para obter objetos da origem.

A maioria dos recursos do CloudFront são compatíveis ao usar uma origem personalizada com a exceção de conteúdo privado. Embora seja possível usar um URL assinado para distribuir conteúdo de uma origem personalizada, para que o CloudFront acesse a origem personalizada, ela deve permanecer publicamente acessível. Para obter mais informações, consulte [Veicular conteúdo privado com URLs e cookies assinados](PrivateContent.md).

Siga essas diretrizes de como usar instâncias do Amazon EC2 e outras origens personalizadas com o CloudFront.
+ Hospede e forneça o mesmo conteúdo em todos os servidores que estão fornecendo conteúdo da mesma origem do CloudFront. Para obter mais informações, consulte [Configurações de origem](DownloadDistValuesOrigin.md)[Referência de configurações de todas as distribuições](distribution-web-values-specify.md) no tópico.
+ Registre as entradas do cabeçalho `X-Amz-Cf-Id` em todos os servidores, caso você precise que o Suporte ou o CloudFront use esse valor para depuração.
+ Restrinja as solicitações às portas HTTP e HTTPS em que a origem personalizada escuta.
+ Sincronizar os relógios de todos os servidores na sua implementação. Observe que o CloudFront usa o Tempo Universal Coordenado (UTC) para signed URLs assinados e cookies assinados, para logs e relatórios. Além disso, se você monitorar a atividade do CloudFront usando métricas do CloudWatch. Observe que o CloudWatch também usa UTC.
+ Use servidores redundantes para lidar com falhas.
+ Para obter informações sobre como usar uma origem personalizada para fornecer conteúdo privado, consulte [Restringir o acesso a arquivos em origens personalizadas](private-content-overview.md#forward-custom-headers-restrict-access).
+ Para obter informações sobre o comportamento da solicitação e da resposta e os códigos de status HTTP compatíveis, consulte [Comportamento de solicitação e resposta](RequestAndResponseBehavior.md).

Se você usa o Amazon EC2 para uma origem personalizada, recomendamos que faça o seguinte:
+ Use uma imagem de máquina da Amazon que instala automaticamente o software para um servidor da web. Para mais informações, consulte a [documentação do Amazon EC2](https://docs.aws.amazon.com/ec2/index.html).
+ Use um balanceador de carga do Elastic Load Balancing para lidar com o tráfego em várias instâncias do Amazon EC2 e isolar sua aplicação das alterações nas instâncias do Amazon EC2. Por exemplo, se usar um balanceador de carga, você poderá adicionar e excluir instâncias do Amazon EC2 sem alterar a aplicação. Para mais informações, consulte a [documentação do Elastic Load Balancing](https://docs.aws.amazon.com/elasticloadbalancing/index.html).
+ Ao criar sua distribuição do CloudFront, especifique o URL do balanceador de carga para o nome de domínio do seu servidor de origem. Para obter mais informações, consulte [Criar uma distribuição](distribution-web-creating-console.md).

## Usar grupos de origem do CloudFront
<a name="concept_origin_groups"></a>

É possível especificar um grupo de origens para sua origem do CloudFront se, por exemplo, você quiser configurar o failover de origem para cenários quando precisar de alta disponibilidade. Use o failover de origem para designar uma origem principal para o CloudFront mais uma segunda origem para o qual p CloudFront muda automaticamente quando a origem primária retorna respostas específicas de falha com código de status HTTP.

Para obter mais informações, incluindo as etapas para configurar um grupo de origens, consulte [Otimizar a alta disponibilidade com o failover de origem do CloudFront](high_availability_origin_failover.md).

## Usar o Amazon API Gateway
<a name="use-api-gate-way-origin"></a>

Você pode usar o API Gateway como origem personalizada para sua distribuição do CloudFront. Para saber mais, consulte os seguintes tópicos:
+ [Securing Amazon API Gateway with secure ciphers using Amazon CloudFront](https://aws.amazon.com/blogs/networking-and-content-delivery/securing-amazon-api-gateway-with-secure-ciphers-using-amazon-cloudfront/): publicação do Blog da AWS
+ [How do I set up API Gateway with my own CloudFront distribution?](https://repost.aws/knowledge-center/api-gateway-cloudfront-distribution) AWS re:Post

# Habilitar IPv6 para distribuições do CloudFront
<a name="cloudfront-enable-ipv6"></a>

O Amazon CloudFront permite IPv4 e IPv6 de clientes para locais da borda da AWS. Além disso, o CloudFront permite conectividade IPv6 e IPv6 (IPv4 e IPv6) em relação às origens. Isso ajuda você a obter a entrega completa de IPv6.

IPv6 é o protocolo de internet de última geração projetado para substituir o IPv4. Enquanto o IPv4 usa endereços de 32 bits (como 192.0.2.44), o IPv6 usa endereços de 128 bits (como 2001:0db8:85a3::8a2e:0370:7334). O IPv6 oferece um espaço de endereço expandido para atender a mais dispositivos conectados à internet.

**Topics**
+ [Solicitações de visualizador IPv6](#ipv6-viewer-requests)
+ [Solicitações de origem IPv6](#ipv6-origin-requests)

## Solicitações de visualizador IPv6
<a name="ipv6-viewer-requests"></a>

Em geral, você deverá habilitar o IPv6 se tiver usuários em redes IPv6 que desejam acessar seu conteúdo. No entanto, se você estiver usando signed URLs ou cookies para restringir o acesso ao seu conteúdo e uma política personalizada que inclui o parâmetro `IpAddress` para restringir os endereços IP que podem acessar seu conteúdo, não habilite o IPv6. Se você quiser restringir o acesso a algum conteúdo, mas não a outros, por endereço IP (ou restringir o acesso, mas não por endereço IP), é possível criar duas distribuições. Para obter informações sobre como criar signed URLs usando uma política personalizada, consulte [Criar um URL assinado usando uma política personalizada](private-content-creating-signed-url-custom-policy.md). Para obter informações sobre como criar signed cookies usando uma política personalizada, consulte [Definir cookies assinados usando uma política personalizada](private-content-setting-signed-cookie-custom-policy.md).

Se estiver usando um conjunto de registros de recursos de alias do Route 53 para rotear tráfego para sua distribuição do CloudFront, você deverá criar um segundo conjunto de registros de recursos de alias quando:
+ Você habilitar o IPv6 para a distribuição
+ Você estiver usando nomes de domínio alternativos nos URLs dos seus objetos

Para mais informações, consulte [Como rotear o tráfego para uma distribuição do Amazon CloudFront usando seu nome de domínio](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/routing-to-cloudfront-distribution.html) no *Guia do desenvolvedor do Amazon Route 53*.

Se você criar um conjunto de registros de recursos de CNAME com o Route 53 ou outro serviço de DNS, não será necessário fazer nenhuma alteração. Um registro CNAME roteará o tráfego para a distribuição, independentemente do formato de endereço IP da solicitação do visualizador.

Se você habilitar o IPv6 e os logs de acesso do CloudFront, a coluna `c-ip` incluirá os valores nos formatos IPv4 e IPv6. Para obter mais informações, consulte [Campos de arquivo de log](standard-logs-reference.md#BasicDistributionFileFormat).

**nota**  
Para manter a alta disponibilidade do cliente, o CloudFront responderá a solicitações do visualizador usando IPv4 se nossos dados sugerirem que o IPv4 fornecerá uma experiência de usuário melhor. Para descobrir qual porcentagem de solicitações do CloudFront é por IPv6, habilite o registro em log do CloudFront em sua distribuição e analise a coluna `c-ip`, que contém o endereço IP do visualizador que fez a solicitação. Essa porcentagem deve aumentar com o tempo, mas continuará sendo parte mínima do tráfego, pois o IPv6 ainda não é compatível pelo todas as redes dos visualizadores em todo o mundo. Algumas redes de visualizador têm excelente suporte a IPv6, mas outras não são compatíveis com ele. (Uma rede de visualizador é semelhante à sua operadora de Internet ou sem fio doméstica.)  
Para mais informações sobre nosso suporte a IPv6, consulte [Perguntas frequentes sobre o CloudFront](https://aws.amazon.com/cloudfront/faqs/). Para ter informações sobre como habilitar logs de acesso, consulte os campos [Registro em log padrão](DownloadDistValuesGeneral.md#DownloadDistValuesLoggingOnOff) e [Prefixo de log](DownloadDistValuesGeneral.md#DownloadDistValuesLogPrefix).

## Solicitações de origem IPv6
<a name="ipv6-origin-requests"></a>

Ao usar uma origem personalizada (excluindo as origens do Amazon S3 e da VPC), você pode personalizar as configurações de origem da sua distribuição para escolher como o CloudFront se conecta à sua origem usando endereços IPv4 ou IPv6. Para origens personalizadas (excluindo origens do Amazon S3 e da VPC), você tem as seguintes opções de conectividade:
+ **Somente IPv4 (padrão)**: essa é a configuração padrão que o CloudFront usa para se conectar às origens via IPv4.
+ **Somente IPv6**: exige que seu domínio de origem seja resolvido para um endereço IPv6. O CloudFront usará exclusivamente endereços IPv6 para conexões de origem.
+ **Pilha dupla**: permite conexões via IPv4 e IPv6. O CloudFront escolhe automaticamente a conectividade de origem IPv4 ou IPv6 para priorizar o desempenho e a disponibilidade, de modo que você possa usar o CloudFront como um gateway da internet de pilha dupla IPv6 e IPv4 para suas aplicações web.

Escolha a opção que se alinha aos requisitos de conectividade e configuração de rede de sua origem. Para ter mais informações, consulte [Designing DNS for IPv6](https://docs.aws.amazon.com/whitepapers/latest/ipv6-on-aws/designing-dns-for-ipv6.html) and [IPv6 security and monitoring considerations](https://docs.aws.amazon.com/whitepapers/latest/ipv6-on-aws/ipv6-security-and-monitoring-considerations.html).

# Usar a implantação contínua do CloudFront para testar com segurança as alterações na configuração da CDN
<a name="continuous-deployment"></a>

Com a *implantação contínua* do Amazon CloudFront, você pode implantar com segurança as alterações em sua configuração de CDN realizando testes iniciais com um subconjunto do tráfego de produção. Você pode usar uma *distribuição de preparação* e uma *política de implantação contínua* para enviar tráfego de visualizadores reais (produção) para a nova configuração de CDN e validar se ela funciona conforme o esperado. Você pode monitorar o desempenho da nova configuração em tempo real e promover a nova configuração para encaminhar todo o tráfego pela *distribuição primária* quando estiver pronto.

O diagrama a seguir mostra a vantagem de usar a implantação contínua do CloudFront. Sem ela, você teria que testar as alterações na configuração de CDN com tráfego simulado. Com a implantação contínua, você pode testar as alterações com um subconjunto do tráfego de produção, depois promover as alterações para a distribuição primária quando estiver pronto.

![\[Gráfico da implantação contínua do CloudFront que envia o tráfego de produção a uma distribuição temporária.\]](http://docs.aws.amazon.com/pt_br/AmazonCloudFront/latest/DeveloperGuide/images/cloudfront-continuous-deployment.png)


Saiba mais sobre como trabalhar com implantação contínua nos tópicos a seguir.

**Topics**
+ [Fluxo de trabalho de implantação contínua do CloudFront](continuous-deployment-workflow.md)
+ [Trabalhar com uma distribuição de preparação e uma política de implantação contínua](working-with-staging-distribution-continuous-deployment-policy.md)
+ [Monitorar uma distribuição de preparação](monitoring-staging-distribution.md)
+ [Saiba como funciona a implantação contínua](understanding-continuous-deployment.md)
+ [Cotas e outras considerações para implantação contínua](continuous-deployment-quotas-considerations.md)

# Fluxo de trabalho de implantação contínua do CloudFront
<a name="continuous-deployment-workflow"></a>

O fluxo de trabalho de alto nível a seguir explica como testar e implantar com segurança as alterações de configuração com a implantação contínua do CloudFront.

1. Escolha a distribuição que deseja usar como *distribuição primária*. A distribuição primária é aquela que está lidando com o tráfego de produção no momento.

1. Da distribuição primária, crie uma *distribuição de preparação*. Uma distribuição de preparação começa como uma cópia da distribuição primária.

1. Crie uma *configuração de tráfego* dentro de uma *política de implantação contínua* e anexe-a à distribuição primária. Isso determina como o CloudFront direciona o tráfego para a distribuição de preparação. Para obter mais informações sobre o roteamento de solicitações para uma distribuição de preparação, consulte [Encaminhar solicitações para a distribuição de preparação](understanding-continuous-deployment.md#understanding-continuous-deployment-routing).

1. Atualize a configuração da distribuição de preparação. Para obter mais informações sobre as configurações que você pode atualizar, consulte [Atualizar distribuições principais e de preparação](understanding-continuous-deployment.md#updating-staging-and-primary-distributions).

1. Monitore a distribuição de preparação para determinar se as alterações de configuração funcionam conforme o esperado. Para obter mais informações sobre o monitoramento de uma distribuição de preparação, consulte [Monitorar uma distribuição de preparação](monitoring-staging-distribution.md).

   Ao monitorar a distribuição de preparação, você pode:
   + Atualizar a configuração da distribuição de preparação novamente para continuar testando alterações de configuração.
   + Atualizar a política de implantação contínua (configuração de tráfego) para enviar mais ou menos tráfego para a distribuição de preparação.

1. Quando estiver satisfeito com o desempenho da distribuição de preparação, *promova* a configuração da distribuição de preparação para a distribuição primária. Essa ação copiará a configuração da distribuição de preparação para a distribuição primária. Isso também desativará a política de implantação contínua, o que significa que o CloudFront encaminhará todo o tráfego para a distribuição primária.

Você pode criar uma automação que monitore o desempenho da distribuição de preparação (etapa 5) e promova a configuração automaticamente (etapa 6) quando determinados critérios forem atendidos.

Depois de promover uma configuração, você pode reutilizar a mesma distribuição de preparação na próxima vez que quiser testar uma alteração na configuração.

Para obter mais informações sobre como trabalhar com distribuições de preparação e políticas de implantação contínua no console do CloudFront, na AWS CLI ou na API do CloudFront, consulte a seção a seguir.

# Trabalhar com uma distribuição de preparação e uma política de implantação contínua
<a name="working-with-staging-distribution-continuous-deployment-policy"></a>

É possível criar, atualizar e modificar distribuições de preparação e políticas de implantação contínua usando o console do CloudFront, a AWS Command Line Interface (AWS CLI) ou a API do CloudFront.

## Criar com uma distribuição de preparação e uma política de implantação contínua
<a name="create-staging-distribution-continuous-deployment-policy"></a>

Os procedimentos a seguir mostram como criar uma distribuição de preparação com uma política de implantação contínua.

------
#### [ Console ]

É possível criar uma distribuição de preparação com uma política de implantação contínua usando o Console de gerenciamento da AWS.

**Como criar uma distribuição de preparação e uma política de implantação contínua (console)**

1. Faça login no Console de gerenciamento da AWS e abra o console do CloudFront em [https://console.aws.amazon.com/cloudfront/v4/home](https://console.aws.amazon.com/cloudfront/v4/home).

1. No painel de navegação, escolha **Distribuições**.

1. Escolha a distribuição que deseja usar como *distribuição primária*. A distribuição primária é aquela que lida atualmente com o tráfego de produção, aquela a partir da qual você criará a distribuição de preparação.

1. Na seção **Continuous deployment** (Implantação contínua), escolha **Create staging distribution** (Criar distribuição de preparação). Isso abre o assistente **Create staging distribution** (Criar distribuição de preparação).

1. No assistente **Create staging distribution** (Criar distribuição de preparação), faça o seguinte:

   1. (Opcional) Digite uma descrição para a distribuição de preparação.

   1. Escolha **Próximo**.

   1. Modifique a configuração da distribuição de preparação. Para obter mais informações sobre as configurações que você pode atualizar, consulte [Atualizar distribuições principais e de preparação](understanding-continuous-deployment.md#updating-staging-and-primary-distributions).

      Quando terminar de modificar a configuração da distribuição de preparação, escolha **Next** (Avançar).

   1. Use o console para especificar a **Traffic configuration** (Configuração de tráfego). Isso determina como o CloudFront direciona o tráfego para a distribuição de preparação. (O CloudFront armazena a configuração de tráfego em uma *política de implantação contínua*.)

      Para obter mais informações sobre as opções para uma **Traffic configuration** (Configuração de tráfego), consulte [Encaminhar solicitações para a distribuição de preparação](understanding-continuous-deployment.md#understanding-continuous-deployment-routing).

      Quando você concluir a **Traffic configuration** (Configuração de tráfego), escolha **Next** (Avançar).

   1. Revise a configuração da distribuição de preparação, incluindo a configuração de tráfego, depois escolha **Create staging distribution** (Criar distribuição de preparação).

Quando você concluir o assistente **Create staging distribution** (Criar distribuição de preparação) no console do CloudFront, o CloudFront fará o seguinte:
+ Criará uma distribuição de preparação com as configurações que você especificou (na etapa 5c)
+ Criará uma política de implantação contínua com a configuração de tráfego que você especificou (na etapa 5d)
+ Anexará a política de implantação contínua à distribuição primária que você usou para criar a distribuição de preparação

Quando a configuração da distribuição primária, com a política de implantação contínua anexada, é implantada em locais da borda, o CloudFront começa a enviar a parte especificada do tráfego para a distribuição de preparação com base na configuração de tráfego.

------
#### [ CLI ]

Para criar uma distribuição de preparação e uma política de implantação contínua com a AWS CLI, use os procedimentos a seguir.

**Como criar uma distribuição de preparação (CLI)**

1. Use os comandos **aws cloudfront get-distribution** e **grep** juntos para obter o valor de `ETag` da distribuição que você deseja usar como *distribuição primária*. A distribuição primária é aquela que lida atualmente com o tráfego de produção, da qual você criará a distribuição de preparação.

   O seguinte comando mostra um exemplo. No exemplo a seguir, substitua *primary\$1distribution\$1ID* pelo ID da distribuição primária. 

   ```
   aws cloudfront get-distribution --id primary_distribution_ID | grep 'ETag'
   ```

   Copie o valor de `ETag` porque ele será necessário na próxima etapa.

1. Use o comando **aws cloudfront copy-distribution** para criar uma distribuição de preparação. O exemplo de comando a seguir usa caracteres de escape (\$1) e quebras de linha para facilitar a leitura, mas você deve omiti-los do comando. No exemplo de comando a seguir:
   + Substitua *primary\$1distribution\$1ID* pelo ID da distribuição primária.
   + Substitua *primary\$1distribution\$1ETag* pelo valor de `ETag` da distribuição primária (que você obteve na etapa anterior).
   + (Opcional) Substitua *CLI\$1example* pelo ID de referência do chamador desejado.

   ```
   aws cloudfront copy-distribution --primary-distribution-id primary_distribution_ID \
                                    --if-match primary_distribution_ETag \
                                    --staging \
                                    --caller-reference 'CLI_example'
   ```

   A saída do comando mostra informações sobre a distribuição de preparação e sua configuração. Copie o nome de domínio do CloudFront da distribuição de preparação porque ele será necessário na próxima etapa.

**Como criar uma política de implantação contínua (CLI com arquivo de entrada)**

1. Use o comando a seguir para criar um arquivo chamado `continuous-deployment-policy.yaml` que contém todos os parâmetros de entrada para o comando **create-continuous-deployment-policy**. O comando a seguir usa caracteres de escape (\$1) e quebras de linha para facilitar a leitura, mas você deve omiti-los do comando.

   ```
   aws cloudfront create-continuous-deployment-policy --generate-cli-skeleton yaml-input \
                                                      > continuous-deployment-policy.yaml
   ```

1. Abra o arquivo chamado `continuous-deployment-policy.yaml` que você acabou de criar. Edite o arquivo para especificar as configurações de política de implantação contínua desejadas e salve o arquivo. Ao editar o arquivo:
   + Na seção `StagingDistributionDnsNames`, selecione:
     + Altere o valor de `Quantity` para `1`.
     + Em `Items`, cole o nome de domínio do CloudFront da distribuição de preparação (que você salvou em uma etapa anterior).
   + Na seção `TrafficConfig`, selecione:
     + Escolha um `Type`: `SingleWeight` ou `SingleHeader`.
     + Remova as configurações do outro tipo. Por exemplo, se você quiser uma configuração de tráfego baseada em peso, defina `Type` como `SingleWeight`, depois remova as configurações de `SingleHeaderConfig`.
     + Para usar uma configuração de tráfego baseada em peso, defina o valor de `Weight` como um número decimal entre `.01` (1%) e `.15` (15%).

     Para obter mais informações sobre essas opções em `TrafficConfig`, consulte [Encaminhar solicitações para a distribuição de preparação](understanding-continuous-deployment.md#understanding-continuous-deployment-routing) e [Persistência da sessão para configurações baseadas em peso](understanding-continuous-deployment.md#understanding-continuous-deployment-sessions).

1. Use o seguinte comando para criar a política de implantação contínua usando parâmetros de entrada do arquivo `continuous-deployment-policy.yaml`.

   ```
   aws cloudfront create-continuous-deployment-policy --cli-input-yaml file://continuous-deployment-policy.yaml
   ```

   Copie o valor de `Id` na saída do comando. Esse é o ID da política de implantação contínua, que será necessário na próxima etapa.

**Como anexar uma política de implantação contínua a uma distribuição primária (CLI com arquivo de entrada)**

1. Use o comando a seguir para salvar a configuração da distribuição primária em um arquivo chamado `primary-distribution.yaml`. Substitua *primary\$1distribution\$1ID* pelo ID da distribuição primária.

   ```
   aws cloudfront get-distribution-config --id primary_distribution_ID --output yaml > primary-distribution.yaml
   ```

1. Abra o arquivo chamado `primary-distribution.yaml` que você acabou de criar. Edite o arquivo fazendo as seguintes alterações:
   + Cole o ID da política de implantação contínua (que você copiou em uma etapa anterior) no campo `ContinuousDeploymentPolicyId`.
   + Renomeie o campo `ETag` para `IfMatch`, mas não altere o valor do campo.

   Ao concluir, salve o arquivo.

1. Use o comando a seguir para atualizar a distribuição primária para utilizar a política de implantação contínua. Substitua *primary\$1distribution\$1ID* pelo ID da distribuição primária.

   ```
   aws cloudfront update-distribution --id primary_distribution_ID --cli-input-yaml file://primary-distribution.yaml
   ```

Quando a configuração da distribuição primária, com a política de implantação contínua anexada, é implantada em locais da borda, o CloudFront começa a enviar a parte especificada do tráfego para a distribuição de preparação com base na configuração de tráfego.

------
#### [ API ]

Para criar uma distribuição de preparação e uma política de implantação contínua com a API do CloudFront, use as seguintes operações de API:
+ [CopyDistribution](https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_CopyDistribution.html)
+ [CreateContinuousDeploymentPolicy](https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_CreateContinuousDeploymentPolicy.html)

Para obter mais informações sobre os campos especificados nessas chamadas de API, consulte o seguinte:
+ [Encaminhar solicitações para a distribuição de preparação](understanding-continuous-deployment.md#understanding-continuous-deployment-routing)
+ [Persistência da sessão para configurações baseadas em peso](understanding-continuous-deployment.md#understanding-continuous-deployment-sessions)
+ A documentação de referência da API do AWS SDK ou de outro cliente de API

Depois de criar uma distribuição de preparação e uma política de implantação contínua, use [UpdateDistribution](https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_UpdateDistribution.html) (na distribuição primária) para anexar a política de implantação contínua à distribuição primária.

------

## Atualizar uma distribuição de preparação
<a name="update-staging-distribution"></a>

Os procedimentos a seguir mostram como atualizar uma distribuição de preparação com uma política de implantação contínua.

------
#### [ Console ]

É possível atualizar determinadas configurações para as distribuições principal e de preparação. Para obter mais informações, consulte [Atualizar distribuições principais e de preparação](understanding-continuous-deployment.md#updating-staging-and-primary-distributions).

**Como atualizar uma distribuição de preparação (console)**

1. Abra o console do CloudFront em [https://console.aws.amazon.com/cloudfront/v4/home](https://console.aws.amazon.com/cloudfront/v4/home).

1. No painel de navegação, escolha **Distribuições**.

1. Escolha a distribuição primária. É a distribuição que lida atualmente com o tráfego de produção, aquela da qual você criou a distribuição de preparação.

1. Escolha **View staging distribution** (Exibir distribuição de preparação).

1. Use o console para modificar a configuração da distribuição de preparação. Para obter mais informações sobre as configurações que você pode atualizar, consulte [Atualizar distribuições principais e de preparação](understanding-continuous-deployment.md#updating-staging-and-primary-distributions).

Assim que a configuração da distribuição de preparação é implantada em locais da borda, ela entra em vigor para o tráfego de entrada que é roteado para a distribuição de preparação.

------
#### [ CLI ]

**Como atualizar uma distribuição de preparação (CLI com arquivo de entrada)**

1. Use o comando a seguir para salvar a configuração da distribuição de preparação em um arquivo chamado `staging-distribution.yaml`. Substitua *staging\$1distribution\$1ID* pelo ID da distribuição de preparação.

   ```
   aws cloudfront get-distribution-config --id staging_distribution_ID --output yaml > staging-distribution.yaml
   ```

1. Abra o arquivo chamado `staging-distribution.yaml` que você acabou de criar. Edite o arquivo fazendo as seguintes alterações:
   + Modifique a configuração da distribuição de preparação. Para obter mais informações sobre as configurações que você pode atualizar, consulte [Atualizar distribuições principais e de preparação](understanding-continuous-deployment.md#updating-staging-and-primary-distributions).
   + Renomeie o campo `ETag` para `IfMatch`, mas não altere o valor do campo.

   Ao concluir, salve o arquivo.

1. Use o comando a seguir para atualizar a configuração da distribuição de preparação. Substitua *staging\$1distribution\$1ID* pelo ID da distribuição de preparação.

   ```
   aws cloudfront update-distribution --id staging_distribution_ID --cli-input-yaml file://staging-distribution.yaml
   ```

Assim que a configuração da distribuição de preparação é implantada em locais da borda, ela entra em vigor para o tráfego de entrada que é roteado para a distribuição de preparação.

------
#### [ API ]

Para atualizar a configuração de uma distribuição de preparação, use [UpdateDistribution](https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_UpdateDistribution.html) (na distribuição de preparação) para modificar a configuração da distribuição de preparação. Para obter mais informações sobre as configurações que você pode atualizar, consulte [Atualizar distribuições principais e de preparação](understanding-continuous-deployment.md#updating-staging-and-primary-distributions).

------

## Atualizar uma política de implantação contínua
<a name="update-continuous-deployment-policy"></a>

Os procedimentos a seguir mostram como atualizar uma política de implantação contínua.

------
#### [ Console ]

É possível atualizar a configuração de tráfego de sua distribuição atualizando a política de implantação contínua.

**Como atualizar uma política de implantação contínua (console)**

1. Abra o console do CloudFront em [https://console.aws.amazon.com/cloudfront/v4/home](https://console.aws.amazon.com/cloudfront/v4/home).

1. No painel de navegação, escolha **Distribuições**.

1. Escolha a distribuição primária. É a distribuição que lida atualmente com o tráfego de produção, aquela a partir da qual você criou a distribuição de preparação.

1. Na seção **Continuous deployment** (Implantação contínua), escolha **Edit policy** (Editar política).

1. Modifique a configuração de tráfego em uma política de implantação contínua. Ao concluir, escolha **Save changes**.

Quando a configuração da distribuição primária, com a política de implantação contínua atualizada, é implantada em locais da borda, o CloudFront começa a enviar tráfego para a distribuição de preparação com base na configuração de tráfego atualizada.

------
#### [ CLI ]

**Como atualizar uma política de implantação contínua (CLI com arquivo de entrada)**

1. Use o comando a seguir para salvar a configuração da política de implantação contínua em um arquivo chamado `continuous-deployment-policy.yaml`. Substitua *continuous\$1deployment\$1policy\$1ID* pelo ID da política de implantação contínua. O comando a seguir usa caracteres de escape (\$1) e quebras de linha para facilitar a leitura, mas você deve omiti-los do comando.

   ```
   aws cloudfront get-continuous-deployment-policy-config --id continuous_deployment_policy_ID \
                                                          --output yaml > continuous-deployment-policy.yaml
   ```

1. Abra o arquivo chamado `continuous-deployment-policy.yaml` que você acabou de criar. Edite o arquivo fazendo as seguintes alterações:
   + Modifique a configuração da política de implantação contínua como quiser. Por exemplo, você pode deixar de usar uma configuração de tráfego baseada em cabeçalho para passar a usar uma configuração de tráfego baseada em peso, ou você pode alterar a porcentagem de tráfego (peso) para uma configuração com base em peso. Para obter mais informações, consulte [Encaminhar solicitações para a distribuição de preparação](understanding-continuous-deployment.md#understanding-continuous-deployment-routing) e [Persistência da sessão para configurações baseadas em peso](understanding-continuous-deployment.md#understanding-continuous-deployment-sessions).
   + Renomeie o campo `ETag` para `IfMatch`, mas não altere o valor do campo.

   Ao concluir, salve o arquivo.

1. Use o comando a seguir para atualizar a política de implantação contínua. Substitua *continuous\$1deployment\$1policy\$1ID* pelo ID da política de implantação contínua. O comando a seguir usa caracteres de escape (\$1) e quebras de linha para facilitar a leitura, mas você deve omiti-los do comando.

   ```
   aws cloudfront update-continuous-deployment-policy --id continuous_deployment_policy_ID \
                                                      --cli-input-yaml file://continuous-deployment-policy.yaml
   ```

Quando a configuração da distribuição primária, com a política de implantação contínua atualizada, é implantada em locais da borda, o CloudFront começa a enviar tráfego para a distribuição de preparação com base na configuração de tráfego atualizada.

------
#### [ API ]

Para atualizar uma política de implantação contínua, use [UpdateContinuousDeplantymentPolicy](https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_UpdateContinuousDeploymentPolicy.html).

------

## Promover a configuração de uma distribuição de preparação
<a name="promote-staging-distribution-configuration"></a>

Os procedimentos a seguir mostram como promover uma configuração de distribuição de preparação.

------
#### [ Console ]

Quando você *promove* uma distribuição de preparação, o CloudFront copia a configuração da distribuição de preparação para a distribuição primária. O CloudFront também desativará a política de implantação contínua e encaminhará todo o tráfego para a distribuição primária.

Depois de promover uma configuração, você pode reutilizar a mesma distribuição de preparação na próxima vez que quiser testar uma alteração na configuração.

**Como promover a configuração de uma distribuição de preparação (console)**

1. Abra o console do CloudFront em [https://console.aws.amazon.com/cloudfront/v4/home](https://console.aws.amazon.com/cloudfront/v4/home).

1. No painel de navegação, escolha **Distribuições**.

1. Escolha a distribuição primária. É a distribuição que lida atualmente com o tráfego de produção, aquela a partir da qual você criou a distribuição de preparação.

1. Na seção **Continuous deployment** (Implantação contínua), escolha **Promote** (Promover).

1. Digite **confirm**, depois escolha **Promote** (Promover).

------
#### [ CLI ]

Quando você *promove* uma distribuição de preparação, o CloudFront copia a configuração da distribuição de preparação para a distribuição primária. O CloudFront também desativará a política de implantação contínua e encaminhará todo o tráfego para a distribuição primária.

Depois de promover uma configuração, você pode reutilizar a mesma distribuição de preparação na próxima vez que quiser testar uma alteração na configuração.

**Como promover a configuração de uma distribuição de preparação (CLI)**
+ Use o comando **aws cloudfront update-distribution-with-staging-config** para promover a configuração da distribuição de preparação para a distribuição primária. O exemplo de comando a seguir usa caracteres de escape (\$1) e quebras de linha para facilitar a leitura, mas você deve omiti-los do comando. No exemplo de comando a seguir:
  + Substitua *primary\$1distribution\$1ID* pelo ID da distribuição primária.
  + Substitua *staging\$1distribution\$1ID* pelo ID da distribuição de preparação.
  + Substitua *primary\$1distribution\$1ETag* e *staging\$1distribution\$1ETag* pelos valores de `ETag` das distribuições primária e de preparação. Certifique-se de que o valor da distribuição primária seja o primeiro, conforme mostrado no exemplo.

  ```
  aws cloudfront update-distribution-with-staging-config --id primary_distribution_ID \
                                                         --staging-distribution-id staging_distribution_ID \
                                                         --if-match 'primary_distribution_ETag,staging_distribution_ETag'
  ```

------
#### [ API ]

Para promover a configuração de uma distribuição de preparação para a distribuição primária, use [UpdateDistributionWithStagingConfig](https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_UpdateDistributionWithStagingConfig.html).

------

# Monitorar uma distribuição de preparação
<a name="monitoring-staging-distribution"></a>

Para monitorar o desempenho de uma distribuição de preparação, você pode usar as mesmas [métricas, logs e relatórios](reports-and-monitoring.md) que o CloudFront fornece para todas as distribuições. Por exemplo:
+ Você pode visualizar as [métricas de distribuição padrão do CloudFront](viewing-cloudfront-metrics.md#monitoring-console.distributions) (como total de solicitações e taxa de erros) no console do CloudFront e [ativar métricas adicionais](viewing-cloudfront-metrics.md#monitoring-console.distributions-additional) (como taxa de acertos de cache e taxa de erros por código de status) por um custo adicional. Você também pode criar alarmes com base nessas métricas.
+ Você pode visualizar [logs padrão](AccessLogs.md) e [logs de acesso em tempo real](real-time-logs.md) para ter informações detalhadas sobre as solicitações recebidas pela distribuição de preparação. Os logs padrão contêm os dois campos a seguir que ajudam a identificar a distribuição primária para a qual a solicitação foi originalmente enviada antes do CloudFront encaminhá-la para a distribuição de preparação: `primary-distribution-id` e `primary-distribution-dns-name`.
+ Você pode visualizar e baixar [relatórios](reports.md) no console do CloudFront, por exemplo, o relatório de estatísticas de cache.

# Saiba como funciona a implantação contínua
<a name="understanding-continuous-deployment"></a>

Os tópicos a seguir explicam como funciona a implantação contínua do CloudFront.

**Topics**
+ [Encaminhar solicitações para a distribuição de preparação](#understanding-continuous-deployment-routing)
+ [Persistência da sessão para configurações baseadas em peso](#understanding-continuous-deployment-sessions)
+ [Atualizar distribuições principais e de preparação](#updating-staging-and-primary-distributions)
+ [Distribuições primária e de preparação não compartilham cache](#staging-and-primary-no-shared-cache)

## Encaminhar solicitações para a distribuição de preparação
<a name="understanding-continuous-deployment-routing"></a>

Se você usar a implantação contínua do CloudFront, não precisará alterar nada nas solicitações do visualizador. Os visualizadores não podem enviar solicitações diretamente para uma distribuição de preparação usando um nome DNS, endereço IP ou CNAME. Em vez disso, os visualizadores enviam solicitações para a distribuição primária (produção), e o CloudFront encaminha algumas dessas solicitações para a distribuição de preparação com base nas configurações de tráfego na política de implantação contínua. Há dois tipos de configurações de tráfego:

**Baseada em peso**  
Uma configuração baseada em peso direciona a porcentagem especificada de solicitações do visualizador para a distribuição de preparação. Ao usar uma configuração baseada em peso, você também pode ativar a *permanência da sessão*, o que ajuda a garantir que o CloudFront trate as solicitações do mesmo visualizador como parte de uma única sessão. Para obter mais informações, consulte [Persistência da sessão para configurações baseadas em peso](#understanding-continuous-deployment-sessions).

**Baseado em cabeçalho**  
Uma configuração baseada em cabeçalho direciona as solicitações para a distribuição de preparação quando a solicitação do visualizador contém um cabeçalho HTTP específico (você especifica o cabeçalho e o valor). As solicitações que não contêm o cabeçalho e o valor especificados são encaminhadas para a distribuição primária. Essa configuração é útil para testes locais ou quando você tem controle sobre as solicitações do visualizador.  
Os cabeçalhos roteados para sua distribuição de preparação devem conter o prefixo `aws-cf-cd-`.

## Persistência da sessão para configurações baseadas em peso
<a name="understanding-continuous-deployment-sessions"></a>

Ao usar uma configuração baseada em peso para direcionar tráfego a uma distribuição de preparação, você também pode ativar a *permanência da sessão*, o que ajuda a garantir que o CloudFront trate as solicitações do mesmo visualizador como parte de uma única sessão. Quando você ativa a permanência da sessão, o CloudFront define um cookie para que todas as solicitações do mesmo visualizador em uma única sessão sejam atendidas por uma distribuição, primária ou de preparação.

Ao ativar a permanência da sessão, você também pode especificar o *tempo ocioso*. Se o visualizador ficar inativo (não enviar solicitações) durante esse período, a sessão expirará e o CloudFront tratará as solicitações futuras desse visualizador como uma nova sessão. Especifique o tempo ocioso como um número em segundos, de 300 (cinco minutos) a 3.600 (uma hora).

Nos casos a seguir, o CloudFront redefine todas as sessões (até mesmo as ativas) e considera todas as solicitações como uma nova sessão:
+ Você desativa ou ativa a política de implantação contínua
+ Você desativa ou ativa a configuração de permanência da sessão

## Atualizar distribuições principais e de preparação
<a name="updating-staging-and-primary-distributions"></a>

Quando uma distribuição primária tem uma política de implantação contínua anexada, as seguintes alterações de configuração estão disponíveis para distribuições primárias e de preparação:
+ Todas as configurações de comportamento do cache, incluindo o comportamento padrão do cache
+ Todas as configurações de origem (origens e grupos de origens)
+ Respostas de erro personalizadas (páginas de erro)
+ Restrições geográficas
+ Objeto raiz padrão
+ Configurações de registro em log
+ Descrição (comentário)

Você também pode atualizar recursos externos referenciados na configuração de uma distribuição, como uma política de cache, uma política de cabeçalhos de resposta, uma função do CloudFront ou uma função do Lambda@Edge.

## Distribuições primária e de preparação não compartilham cache
<a name="staging-and-primary-no-shared-cache"></a>

As distribuições primária e de preparação não compartilham um cache. Quando o CloudFront envia a primeira solicitação para uma distribuição de preparação, seu cache fica vazio. À medida que as solicitações chegam à distribuição de preparação, as respostas começam a ser armazenadas em cache (se configurada para isso).

# Cotas e outras considerações para implantação contínua
<a name="continuous-deployment-quotas-considerations"></a>

A implantação contínua do CloudFront está sujeita às seguintes cotas e outras considerações.

## Cotas
<a name="continuous-deployment-quotas"></a>
+ Número máximo de distribuições de preparação por Conta da AWS: 20
+ Número máximo de políticas de implantação contínua por Conta da AWS: 20
+ Porcentagem máxima de tráfego que você pode enviar para uma distribuição de preparação em uma configuração baseada em peso: 15%
+ Valores mínimo e máximo para o tempo ocioso da permanência da sessão: 300–3.600 segundos

Para obter mais informações, consulte [Cotas](cloudfront-limits.md).

**nota**  
Ao usar a implantação contínua e sua distribuição primária estiver configurada com OAC para acesso ao bucket do S3, atualize sua política do bucket do S3 para permitir o acesso à distribuição de preparação. Para obter exemplos de políticas de bucket do S3, consulte [Conceder permissão ao CloudFront para acessar o bucket do S3](private-content-restricting-access-to-s3.md#oac-permission-to-access-s3).

## AWS WAFACLs da Web do
<a name="waf-web-acl"></a>

Se você habilitar a implantação contínua para a distribuição, as seguintes considerações se aplicarão ao AWS WAF:
+ Não será possível associar uma lista de controle de acesso (ACL) da web do AWS WAF à distribuição se for a primeira vez que essa ACL é associada à distribuição.
+ Também não será possível desassociar uma ACL da web do AWS WAF da distribuição.

Antes de realizar as tarefas anteriores, é necessário excluir a política de implantação contínua para a distribuição da produção. Isso também exclui a distribuição de preparação. Para obter mais informações, consulte [Usar proteções do AWS WAF](distribution-web-awswaf.md).

## Casos em que o CloudFront envia todas as solicitações para a distribuição primária
<a name="all-requests-to-primary-distribution"></a>

Em certos casos, como períodos de alta utilização de recursos, o CloudFront pode enviar todas as solicitações para a distribuição primária, independentemente do que esteja especificado na política de implantação contínua.

O CloudFront envia todas as solicitações para a distribuição primária durante os horários de pico de tráfego, independentemente do que esteja especificado na política de implantação contínua. O pico de tráfego se refere ao tráfego no *serviço CloudFront*, e não ao tráfego na sua distribuição.

## HTTP/3
<a name="continuous-deployment-http3"></a>

Você não pode usar a implantação contínua com uma distribuição que seja compatível com HTTP/3.

# Usar URLs personalizados adicionando nomes de domínio alternativos (CNAMEs)
<a name="CNAMEs"></a>

Quando você cria uma distribuição, o CloudFront fornece um nome de domínio a ela, por exemplo, d111111abcdef8.cloudfront.net. Em vez de usar esse nome de domínio fornecido, é possível usar um nome de domínio alternativo (também conhecido como CNAME).

Saiba como usar seu próprio nome de domínio, como www.exemplo.com. Consulte os seguintes tópicos:

**Topics**
+ [Requisitos para o uso de nomes de domínio alternativos](#alternate-domain-names-requirements)
+ [Restrições de uso de nomes de domínio alternativos](#alternate-domain-names-restrictions)
+ [Adicionar um nome de domínio alternativo](CreatingCNAME.md)
+ [Mover um nome de domínio alternativo](alternate-domain-names-move.md)
+ [Remover um nome de domínio alternativo](alternate-domain-names-remove-domain.md)
+ [Usar curingas em nomes de domínio alternativos](alternate-domain-names-wildcard.md)

## Requisitos para o uso de nomes de domínio alternativos
<a name="alternate-domain-names-requirements"></a>

Ao adicionar um nome de domínio alternativo, como www.example.com, a uma distribuição do CloudFront, os requisitos são os seguintes:

**Os nomes de domínio alternativos devem estar em letras minúsculas**  
Todos os nomes de domínio alternativos (CNAMEs) devem estar em letras minúsculas.

**Os nomes de domínio alternativos devem ser cobertos por um certificado TLS válido**  
Para adicionar um nome de domínio alternativo (CNAME) a uma distribuição do CloudFront, é necessário anexar à distribuição um certificado TLS válido e confiável, que abranja o nome de domínio alternativo. Isso garante que somente as pessoas com acesso ao certificado do domínio possam associar ao CloudFront um CNAME relacionado ao seu domínio.  
Um certificado confiável é aquele que é emitido pelo AWS Certificate Manager (ACM) ou por outra autoridade de certificação (CA) válida. Você pode usar um certificado autoassinado para validar um CNAME existente, mas *não* para um CNAME novo. O CloudFront oferece suporte às mesmas autoridades de certificação que o Mozilla. Para ver a lista atual, consulte [Mozilla Included CA Certificate List](https://wiki.mozilla.org/CA/Included_Certificates). Para ter informações sobre certificados intermediários ao usar uma CA de terceiros, consulte [Certificados intermediários](cnames-and-https-requirements.md#https-requirements-intermediate-certificates).  
Para verificar um nome de domínio alternativo usando o certificado que você anexar, incluindo nomes de domínio alternativos que incluem curingas, o CloudFront verifica o nome de assunto alternativo (SAN, subject alternative name) no certificado. O nome de domínio alternativo que você estiver adicionando deverá ser coberto pelo SAN.  
É possível anexar somente um certificado por vez a uma distribuição do CloudFront.
Você prova que está autorizado a adicionar um determinado nome de domínio alternativo à distribuição de uma das seguintes maneiras:  
+ Anexar um certificado que inclui o nome de domínio alternativo, como nome\$1do\$1produto.exemplo.com.
+ Anexando um certificado que inclui um caractere curinga \$1 no início de um nome de domínio, para cobrir vários subdomínios com um certificado. Ao especificar um caractere curinga, é possível adicionar vários subdomínios como nomes de domínio alternativos no CloudFront.
Os exemplos a seguir ilustram como usar caracteres curinga em nomes de domínio em um trabalho certificado para autorizar a adição de nomes de domínio alternativos específicos no CloudFront.  
+ Você deseja adicionar marketing.exemplo.com como um nome de domínio alternativo. Você lista no seu certificado o seguinte nome de domínio: \$1.exemplo.com. Ao anexar esse certificado ao CloudFront, você poderá adicionar qualquer nome de domínio alternativo à distribuição que substitua o caractere curinga nesse nível, incluindo marketing.exemplo.com. Você também pode, por exemplo, adicionar os seguintes nomes de domínio alternativos:
  + produto.exemplo.com
  + api.example.com

  No entanto, você não pode adicionar nomes de domínio alternativos que estão em níveis maiores ou menores que o caractere curinga. Por exemplo, você não pode adicionar os nomes de domínio alternativos exemplo.com nem marketing.produto.exemplo.com. 
+ Você deseja adicionar exemplo.com como um nome de domínio alternativo. Para fazer isso, você deve listar o próprio nome de domínio exemplo.com no certificado que anexa à distribuição.
+ Você deseja adicionar marketing.produto.exemplo.com como um nome de domínio alternativo. Para fazer isso, você pode listar \$1.produto.exemplo.com no certificado ou pode listar o próprio marketing.produto.exemplo.com no certificado.

**Permissão para alterar a configuração de DNS**  
Ao adicionar nomes de domínio alternativos, é necessário criar registros CNAME para rotear consultas de DNS para os nomes de domínio alternativos à distribuição do CloudFront. Para fazer isso, você deve ter permissão para criar registros CNAME com o provedor de serviço DNS para os nomes de domínio alternativos que está usando. Normalmente, isso significa que você tem os domínios, mas pode estar desenvolvendo um aplicativo para o proprietário dele.

**Nomes de domínio alternativos e HTTP**  
Se quiser que os visualizadores usem HTTPS com um nome de domínio alternativo, será necessário realizar algumas configurações adicionais. Para obter mais informações, consulte [Usar nomes de domínio alternativos e HTTPS](using-https-alternate-domain-names.md).

## Restrições de uso de nomes de domínio alternativos
<a name="alternate-domain-names-restrictions"></a>

Observe as seguintes restrições de uso de nomes de domínio alternativos:

**Número máximo de nomes de domínio alternativos**  
Para saber o número máximo atual de nomes de domínio alternativos que podem ser adicionados a uma distribuição ou para solicitar uma cota maior (anteriormente conhecida como limite), consulte [Cotas gerais para distribuições](cloudfront-limits.md#limits-web-distributions).

**Duplicar e substituir nomes de domínio alternativos**  
Não será possível adicionar um nome de domínio alternativo a uma distribuição do CloudFront se o mesmo nome de domínio alternativo já existir em outra distribuição do CloudFront, mesmo se a sua Conta da AWS for a proprietária da outra distribuição.  
No entanto, você pode adicionar um nome de domínio alternativo curinga, como \$1.exemplo.com, que inclui (sobrepõe) um nome de domínio alternativo não curinga, como www.exemplo.com. Se você tiver nomes de domínio alternativos sobrepostos em duas distribuições, o CloudFront enviará a solicitação para a distribuição com a correspondência de nome mais específica, independentemente da distribuição para a qual o registro de DNS apontar. Por exemplo, marketing.domínio.com é mais específico que \$1.domínio.com.  
Se você tiver uma entrada de DNS curinga existente que aponta para uma distribuição do CloudFront e receber um erro de DNS configurado incorretamente ao tentar adicionar um novo CNAME com um nome mais específico, consulte [O CloudFront retorna um erro de registro DNS configurado incorretamente quando tento adicionar um novo CNAME](troubleshooting-distributions.md#troubleshoot-incorrectly-configured-DNS-record-error).

**Domain fronting**  
O CloudFront tem proteção contra a ocorrência de fronting de domínio entre contas diferentes da Conta da AWS. Esse cenário ocorre quando um cliente não padrão cria uma conexão TLS/SSL com um nome de domínio em uma Conta da AWS e depois faz uma solicitação HTTPS para um nome de domínio não relacionado em outra Conta da AWS.  
 Por exemplo, a conexão TLS pode se conectar a www.example.com e enviar uma solicitação para www.example.org.  
Para determinar se uma solicitação está sendo direcionada ao domínio, o CloudFront verifica o seguinte:  
+ Se a extensão SNI é igual ao cabeçalho `Host` da solicitação HTTP.
+ Se o certificado pertence à mesma Conta da AWS usada pela distribuição da solicitação.
+ Se a solicitação HTTP `Host` é coberta pelo certificado que é servido durante o handshake TLS.
Se nenhuma dessas condições for atendida, o CloudFront determinará que a solicitação é um fronting de domínio. O CloudFront rejeitará a solicitação com uma resposta de erro HTTP 421.  
Se o cliente não fornecer a extensão SNI e, em vez disso, receber um certificado \$1.cloudfront.net padrão, o CloudFront aceitará as solicitações recebidas.

**Como o CloudFront identifica a distribuição de uma solicitação**  
O CloudFront identifica uma distribuição para uma solicitação HTTP com base no cabeçalho `Host`. O CloudFront não depende do endereço IP do CloudFront ao qual você está se conectando ou de qual handshake SNI foi fornecido durante o handshake TLS.  
Quando o CloudFront recebe uma solicitação, ele usa o valor do cabeçalho `Host` para fazer a correspondência entre a solicitação e a distribuição específica.  
Por exemplo, digamos que você tenha duas distribuições e tenha atualizado sua configuração de DNS para que os nomes de domínio alternativos sejam roteados para os seguintes endpoints:   
+ primary.example.com aponta para d111111primary.cloudfront.net 
+ secondary.example.com aponta para d222222secondary.cloudfront.net 
Se você fizer uma solicitação para https://primary.example.com, mas especificar o cabeçalho `Host` como secondary.example.com (por exemplo `curl https://primary.example.com -H "Host: secondary.example.com"`), a solicitação será roteada para a distribuição secundária.

**Adicionar um nome de domínio alternativo no nó superior (apex de zona) de um domínio**  
Ao adicionar um nome de domínio alternativo a uma distribuição, geralmente, você cria um registro CNAME na sua configuração de DNS para rotear consultas de DNS do nome de domínio para sua distribuição do CloudFront. No entanto, não é possível criar um registro CNAME no nó superior de um namespace DNS, também conhecido como o apex de zona. O protocolo DNS não permite isso. Por exemplo, se você registrar o nome do DNS exemplo.com, o apex de zona será exemplo.com. Você não pode criar um registro CNAME para exemplo.com, mas pode criar registros CNAME para www.exemplo.com, produtonovo.exemplo.com e assim por diante.  
Se estiver usando o Route 53 como o serviço de DNS, você poderá criar um conjunto de registros de recurso de alias, que tem as seguintes vantagens sobre os registros CNAME:  
+ Você pode criar um conjunto de registros de recurso de alias para um nome de domínio no nó superior (example.com).
+ Você pode criar um registro HTTPS para um nome de domínio alternativo para permitir a negociação do protocolo como parte da consulta de DNS, se o cliente oferecer suporte a ela. Para obter mais informações, consulte [Create alias resource record set](CreatingCNAME.md#alternate-domain-https).
+ Você não paga pelas consultas do Route 53 ao usar um conjunto de registros de recurso de alias.
Se ativar o IPv6, você deve criar dois conjuntos de registros de recurso de alias: um para rotear o tráfego IPv4 (um registro A) e outro para rotear o tráfego IPv6 (um registro AAAA). Para obter mais informações, consulte [Habilitar IPv6 (solicitações do visualizador)](DownloadDistValuesGeneral.md#DownloadDistValuesEnableIPv6) no tópico [Referência de configurações de todas as distribuições](distribution-web-values-specify.md). 
Para mais informações, consulte [Rotear o tráfego para uma distribuição na Web do Amazon CloudFront usando seu nome de domínio](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/routing-to-cloudfront-distribution.html) no *Guia do desenvolvedor do Amazon Route 53*.  
Se não estiver usando o Route 53 para seu DNS, você poderá solicitar endereços IP estáticos anycast para rotear domínios apex, como exemplo.com, para o CloudFront. Para obter mais informações, consulte [Solicite IPs estáticos anycast para usar na lista de permissões](request-static-ips.md).

# Adicionar um nome de domínio alternativo
<a name="CreatingCNAME"></a>

A lista de tarefas a seguir descreve como usar o console do CloudFront para adicionar um nome de domínio alternativo à distribuição, para que você possa usar seu próprio nome de domínio nos links, em vez do nome de domínio do CloudFront. Para obter informações sobre como atualizar sua distribuição usando a API do CloudFront, consulte [Configurar distribuições](distribution-working-with.md).

**nota**  
Se você quiser que os visualizadores usem HTTPS com seu nome de domínio alternativo, consulte [Usar nomes de domínio alternativos e HTTPS](using-https-alternate-domain-names.md).

**Antes de começar:** faça o seguinte antes de atualizar a distribuição para adicionar um nome de domínio alternativo:
+ Registre o nome de domínio com o Route 53 ou outro provedor de domínio.
+ Obtenha um certificado TLS de uma autoridade de certificação (CA) autorizada que cubra o nome de domínio. Adicione o certificado à sua distribuição para validar que você está autorizado a usar o domínio. Para obter mais informações, consulte [Requisitos para o uso de nomes de domínio alternativos](CNAMEs.md#alternate-domain-names-requirements).<a name="CreatingCNAMEProcess"></a>

**Adicionar um nome de domínio alternativo**

1. Faça login no Console de gerenciamento da AWS e abra o console do CloudFront em [https://console.aws.amazon.com/cloudfront/v4/home](https://console.aws.amazon.com/cloudfront/v4/home).

1. Escolha o ID da distribuição que você deseja atualizar.

1. Na guia **Geral**, escolha **Adicionar um domínio**.

1. Insira até cinco domínios para servir.

1. Escolha **Próximo**.

1. Para o **certificado TLS**, se o CloudFront não conseguir encontrar um certificado AWS Certificate Manager (ACM) existente para seu domínio na sua Conta da AWS na Região da AWS `us-east-1`, você pode optar por criar automaticamente um certificado ou criá-lo manualmente no ACM.

1. Quando seu certificado for provisionado, você deverá atualizar seus registros de DNS com seu provedor de DNS para provar a propriedade do domínio. As entradas que você precisa fazer nos seus registros DNS são fornecidas para você no console do CloudFront.

1. Depois de atualizar seus registros DNS, escolha **Validar certificado.**

1. Quando o certificado for validado, escolha **Avançar**.

1. Revise suas alterações e escolha **Adicionar domínios**.

1. Na guia **General** na distribuição, confirme se **Distribution Status** foi alterado para **Deployed**. Se você tentar usar um nome de domínio alternativo antes de as atualizações da sua distribuição serem implementados, os links criados nas etapas a seguir poderão não funcionar.

1. Configure o serviço de DNS para o nome de domínio alternativo (como www.exemplo.com) para rotear tráfego para o nome de domínio do CloudFront para sua distribuição (por exemplo, d111111abcdef8.cloudfront.net). O método usado depende se você está usando o Route 53 como o provedor de serviço DNS para o domínio ou outro provedor. Para obter mais informações, consulte [Adicione um domínio à sua distribuição padrão do CloudFront](add-domain-existing-distribution.md).  
**Route 53**  
Crie um conjunto de registros de recursos de alias. Com um conjunto de registros de recurso de alias, você não paga pelas consultas do Route 53. É possível criar um conjunto de registros de recurso de alias para o nome de domínio raiz (example.com), que não é permitido pelo DNS para CNAMEs. Para obter mais informações sobre como criar um conjunto de registros de recurso de alias, consulte [Rotear o tráfego para uma distribuição na Web do Amazon CloudFront usando seu nome de domínio](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/routing-to-cloudfront-distribution.html) no *Guia do desenvolvedor do Amazon Route 53*.  
Opcionalmente, você pode criar um registro HTTPS para um nome de domínio alternativo para permitir a negociação do protocolo como parte da consulta de DNS, se o cliente oferecer suporte a ela.  

**Para criar um conjunto de registros de recurso de alias com um registro HTTPS (opcional)**

   1. Habilite HTTP/2 ou HTTP/3 nas suas configurações de distribuição do CloudFront. Para obter mais informações, consulte [Versões de HTTP compatíveis](DownloadDistValuesGeneral.md#DownloadDistValuesSupportedHTTPVersions) e [Atualizar uma distribuição](HowToUpdateDistribution.md).

   1. No console do Route 53, crie um conjunto de registros de recurso de alias. Siga o procedimento [Como encaminhar tráfego para uma distribuição Web do Amazon CloudFront usando seu nome de domínio](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/routing-to-cloudfront-distribution.html).

   1. Enquanto estiver criando o conjunto de registros do recurso de alias, crie um registro de alias com o tipo de registro **HTTPS**.  
**Outro provedor de serviço de DNS**  
Use o método fornecido pelo provedor de serviço DNS para adicionar um registro CNAME ao domínio. Esse novo registro CNAME redirecionará consultas de DNS do seu nome de domínio alternativo (como www.exemplo.com) para o nome de domínio do CloudFront da sua distribuição (por exemplo, d111111abcdef8.cloudfront.net). Para obter mais informações, consulte a documentação fornecida por seu provedor de serviço de DNS.  
Se você já tiver um registro CNAME para seu nome de domínio alternativo, atualize-o ou substitua-o por um novo que aponte para o nome de domínio do CloudFront da sua distribuição.

1. Usando `dig` ou uma ferramenta de DNS semelhante, confirme se a configuração de DNS criada na etapa anterior aponta para o nome de domínio da sua distribuição.

   O exemplo a seguir mostra uma solicitação `dig` no domínio www.example.com, bem como a parte relevante da resposta.

   ```
   PROMPT> dig www.example.com
   
   ; <<> DiG 9.3.3rc2 <<> www.example.com
   ;; global options:	printcmd
   ;; Got answer:
   ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 15917
   ;; flags: qr rd ra; QUERY: 1, ANSWER: 9, AUTHORITY: 2, ADDITIONAL: 0
   
   ;; QUESTION SECTION:
   ;www.example.com.     IN    A
   
   ;; ANSWER SECTION:
   www.example.com. 10800 IN	CNAME	d111111abcdef8.cloudfront.net.
   ...
   ```

   A seção de resposta mostra um registro CNAME que roteia consultas de www.exemplo.com para o nome de domínio de distribuição do CloudFront d111111abcdef8.cloudfront.net. Se o nome à direita de `CNAME` for o nome de domínio de sua distribuição do CloudFront, o registro CNAME estará configurado corretamente. Se o valor for qualquer outro, por exemplo, o nome de domínio do bucket do Amazon S3, o registro CNAME está configurado incorretamente. Nesse caso, volte para a etapa 7 e corrija o registro CNAME de modo que ele aponte para o nome de domínio da sua distribuição.

1. Teste o nome de domínio alternativo acessando URLs com seu nome de domínio em vez do nome de domínio do CloudFront da distribuição.

1. Na aplicação, altere os URLs para que os objetos usem o nome de domínio alternativo, em vez do nome de domínio da distribuição do CloudFront.

# Mover um nome de domínio alternativo
<a name="alternate-domain-names-move"></a>

Se você tentar adicionar um nome de domínio alternativo a uma distribuição padrão ou a um locatário de distribuição e o nome de domínio alternativo já estiver associado a um recurso diferente, receberá uma mensagem de erro.

Por exemplo, você receberá a `CNAMEAlreadyExists`mensagem de erro ("Um ou mais dos CNAMEs fornecidos já estão associados a um recurso diferente") ao tentar adicionar www.example.com a uma distribuição padrão ou a um locatário de distribuição, mas esse nome de domínio alternativo já estiver associado a um recurso diferente.

Nesse caso, talvez você queira mover o nome de domínio alternativo existente de um recurso para outro. Essa é a *distribuição de origem* e a *distribuição de destino*. Você pode mover nomes de domínio alternativos entre distribuições padrão e/ou locatários de distribuição.

Para mover o nome de domínio alternativo, consulte os tópicos a seguir:

**Topics**
+ [Configurar a distribuição padrão de destino ou o locatário de distribuição](alternate-domain-names-move-create-target.md)
+ [Encontre a distribuição padrão de origem ou o locatário da distribuição](alternate-domain-names-move-find-source.md)
+ [Mover o nome de domínio alternativo](alternate-domain-names-move-options.md)

# Configurar a distribuição padrão de destino ou o locatário de distribuição
<a name="alternate-domain-names-move-create-target"></a>

Antes de mover um nome de domínio alternativo, você deve configurar o recurso de destino. Esta é a distribuição padrão de destino ou o locatário de distribuição para o qual você está movendo o nome de domínio alternativo.

------
#### [ Standard distribution ]

**Para configurar uma distribuição padrão de destino**

1. Solicite um certificado TLS. Esse certificado inclui o nome de domínio alternativo como o Assunto ou o Domínio Alternativo do Assunto (SAN), ou um curinga (\$1) que cobre o nome de domínio alternativo que você está movendo. Caso não possua um, poderá solicitá-lo no AWS Certificate Manager (ACM) ou de outra autoridade de certificação (CA) e importá-lo para o ACM. 
**nota**  
Solicite ou importe o certificado na região Leste dos EUA (Norte da Virgínia) (`us-east-1`).

   Para ter mais informações, consulte [Request a public certificate using the console](https://docs.aws.amazon.com/acm/latest/userguide/acm-public-certificates.html#request-public-console) e [Import a certificate](https://docs.aws.amazon.com/acm/latest/userguide/import-certificate-api-cli.html) no AWS Certificate Manager no *Guia do usuário do AWS Certificate Manager*.

1. Se você ainda não criou a distribuição padrão de destino, crie-a agora. Como parte da criação da distribuição padrão, associe o certificado a essa distribuição padrão. Para obter mais informações, consulte [Criar uma distribuição](distribution-web-creating-console.md).

   Se você já tiver uma distribuição padrão de destino, associe o certificado à distribuição padrão. Para obter mais informações, consulte [Atualizar uma distribuição](HowToUpdateDistribution.md).

1. **Se você estiver movendo nomes de domínio alternativos dentro da mesma Conta da AWS, pule esta etapa.**

   Para mover um nome de domínio alternativo de uma Conta da AWS para outra, você deve criar um registro TXT na sua configuração de DNS. Essa etapa de verificação ajuda a evitar transferências de domínio não autorizadas. O CloudFront usa esse registro TXT para validar que você é o proprietário do nome de domínio alternativo. 

   Na sua configuração de DNS, crie um registro TXT de DNS que associe o nome de domínio alternativo à distribuição padrão de destino. O formato do registro TXT pode variar, dependendo do tipo de domínio.
   + Para subdomínios, especifique um sublinhado (`_`) na frente do nome de domínio alternativo. O seguinte exemplo mostra um registro de TXT.

     `_www.example.com TXT d111111abcdef8.cloudfront.net`
   + Para um apex (ou domínio raiz), especifique um sublinhado e um ponto (`_.`) na frente do nome do domínio. O seguinte exemplo mostra um registro de TXT.

     `_.example.com TXT d111111abcdef8.cloudfront.net`

------
#### [ Distribution tenant ]

**Para configurar o locatário da distribuição de destino**

1. Solicite um certificado TLS. Esse certificado inclui o nome de domínio alternativo como o Assunto ou o Domínio Alternativo do Assunto (SAN), ou um curinga (\$1) que cobre o nome de domínio alternativo que você está movendo. Caso não possua um, poderá solicitá-lo no AWS Certificate Manager (ACM) ou de outra autoridade de certificação (CA) e importá-lo para o ACM. 
**nota**  
Solicite ou importe o certificado na região Leste dos EUA (Norte da Virgínia) (`us-east-1`).

   Para ter mais informações, consulte [Request a public certificate using the console](https://docs.aws.amazon.com/acm/latest/userguide/acm-public-certificates.html#request-public-console) e [Import a certificate](https://docs.aws.amazon.com/acm/latest/userguide/import-certificate-api-cli.html) no AWS Certificate Manager no *Guia do usuário do AWS Certificate Manager*.

1. Se você ainda não criou o locatário da distribuição de destino, crie-o agora. Como parte da criação do locatário de distribuição, associe o certificado ao locatário de distribuição. Para obter mais informações, consulte [Criar uma distribuição](distribution-web-creating-console.md).

   Se você já tiver um locatário da distribuição de destino, associe o certificado ao locatário da distribuição. Para obter mais informações, consulte [Adicionar um domínio e um certificado (locatário da distribuição)](managed-cloudfront-certificates.md#vanity-domain-tls-tenant).

1. **Se você estiver movendo nomes de domínio alternativos dentro da mesma Conta da AWS, pule esta etapa.**

   Para mover um nome de domínio alternativo de uma Conta da AWS para outra, você deve criar um registro TXT na sua configuração de DNS. Essa etapa de verificação ajuda a evitar transferências de domínio não autorizadas e o CloudFront usa esse registro TXT para validar sua propriedade do nome de domínio alternativo. 

   Na sua configuração de DNS, crie um registro TXT de DNS que associe o nome de domínio alternativo ao locatário de distribuição de destino. O formato do registro TXT pode variar, dependendo do tipo de domínio.
   + Para subdomínios, especifique um sublinhado (`_`) na frente do nome de domínio alternativo. O seguinte exemplo mostra um registro de TXT.

     `_www.example.com TXT d111111abcdef8.cloudfront.net`
   + Para um apex (ou domínio raiz), especifique um sublinhado e um ponto (`_.`) na frente do nome do domínio. O seguinte exemplo mostra um registro de TXT.

     `_.example.com TXT d111111abcdef8.cloudfront.net`

------

Em seguida, consulte o tópico a seguir para encontrar a distribuição padrão de origem ou o locatário de distribuição que já está associado ao nome de domínio alternativo.

# Encontre a distribuição padrão de origem ou o locatário da distribuição
<a name="alternate-domain-names-move-find-source"></a>

Antes de mover um nome de domínio alternativo de uma distribuição (padrão ou locatário) para outra, localize a *distribuição de origem*. Esse é o recurso ao qual o nome de domínio alternativo já está associado. Quando você conhece o ID da Conta da AWS dos recursos das distribuições de origem e de destino, pode determinar como o nome de domínio alternativo será movido.

**Observações**  
Recomendamos que você use a operação da API [ListDomainConflicts](https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_ListDomainConflicts.html), pois ela é compatível com distribuições padrão e locatários de distribuição.
A operação da API [ListConflictingAliases](https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_ListConflictingAliases.html) só é compatível com distribuições padrão.

Siga estes exemplos para encontrar a distribuição de origem (padrão ou locatário).

------
#### [ list-domain-conflicts ]

**dica**  
Para uma distribuição padrão, você deve ter as permissões `cloudfront:GetDistribution` e `cloudfront:ListDomainConflicts`.
Para um locatário de distribuição, você deve ter as permissões `cloudfront:GetDistributionTenant` e `cloudfront:ListDomainConflicts`.

**Para usar `list-domain-conflicts` para encontrar a distribuição padrão de origem ou o locatário da distribuição**

1. Use o comando `list-domain-conflicts` conforme mostrado no exemplo a seguir. 

   1. Substitua *www.exemplo.com* pelo nome de domínio.

   1. Para `domain-control-validation-resource`, especifique o ID da distribuição padrão de destino ou do locatário de distribuição [que você configurou anteriormente](alternate-domain-names-move-create-target.md). Você deve ter uma distribuição padrão ou um locatário de distribuição com um certificado associado que abranja o domínio especificado.

   1. Execute este comando usando credenciais que estão na mesma Conta da AWS que a distribuição padrão de destino ou locatário da distribuição.

   **Solicitação**

    Este exemplo especifica um locatário de distribuição.

   ```
   aws cloudfront list-domain-conflicts \
   --domain www.example.com \
   --domain-control-validation-resource "DistributionTenantId=dt_2x9GhoK0TZRsohWzv1b9It8JABC"
   ```

   **Resposta**

   Para cada nome de domínio na saída do comando, você verá o seguinte:
   + O tipo de recurso que é associado ao domínio
   + O ID do recurso.
   + O ID da Conta da AWS que é proprietária do recurso

   O ID do recurso e o ID da conta estão parcialmente ocultos. Isso permite identificar a distribuição padrão ou o locatário de distribuição que pertence à sua conta e ajuda a proteger as informações daqueles que você não possui.

   ```
   {
       "DomainConflicts": [
           {
               "Domain": "www.example.com",
               "ResourceType": "distribution-tenant",
               "ResourceId": "***************ohWzv1b9It8JABC",
               "AccountId": "******112233"
           }
       ]
   }
   ```

   A resposta lista todos os nomes de domínio que entram em conflito ou se sobrepõem ao que você especificou.

**Exemplo**
   + Se você especificar *locatario1.exemplo.com*, a resposta incluirá locatario1.exemplo.com e o nome de domínio alternativo curinga sobreposto (\$1.exemplo.com, se ele existir).
   + Se você especificar *\$1.locatario1.exemplo.com*, a resposta incluirá \$1.locatario1.exemplo.com e quaisquer nomes de domínio alternativos cobertos por esse curinga (por exemplo, teste.locatario1.exemplo.com, dev.locatario1.exemplo.com e assim por diante).

1. Na resposta, localize a distribuição padrão de origem ou o locatário de distribuição do nome de domínio alternativo que você está movendo e observe o ID da Conta da AWS. 

1. Compare o ID da conta da distribuição padrão de *origem* ou do locatário de distribuição com o ID da conta em que você criou a distribuição padrão ou o locatário de distribuição de *destino* na [etapa anterior](alternate-domain-names-move-create-target.md). Em seguida, você pode determinar se a origem e o destino estão na mesma Conta da AWS. Isso ajuda você a determinar como mover o nome de domínio alternativo. 

   Para obter mais informações, consulte o comando [https://docs.aws.amazon.com/cli/latest/reference/cloudfront/list-domain-conflicts.html](https://docs.aws.amazon.com/cli/latest/reference/cloudfront/list-domain-conflicts.html) na *Referência da AWS Command Line Interface*.

------
#### [ list-conflicting-aliases (standard distributions only) ]

**dica**  
Você deve ter as permissões `cloudfront:GetDistribution` e `cloudfront:ListConflictingAliases` na distribuição padrão de destino.

**Para usar `list-conflicting-aliases` para encontrar a distribuição padrão de origem**

1. Use o comando `list-conflicting-aliases` conforme mostrado no exemplo a seguir. 

   1. Substitua *www.exemplo.com* pelo nome de domínio alternativo e *EDFDVBD6EXAMPLE* pelo ID da distribuição padrão de destino [configurada anteriormente](alternate-domain-names-move-create-target.md).

   1. Execute este comando usando credenciais que estão na mesma Conta da AWS que a distribuição padrão de destino. 

   **Solicitação**

    Este exemplo especifica uma distribuição padrão.

   ```
   aws cloudfront list-conflicting-aliases \
   --alias www.example.com \
   --distribution-id EDFDVBD6EXAMPLE
   ```

   **Resposta**

   Para cada nome de domínio alternativo na saída do comando, você poderá ver o ID da distribuição padrão à qual ele está associado e o ID da Conta da AWS proprietária da distribuição padrão. Os IDs de distribuição padrão e de conta são parcialmente ocultados, o que permite identificar as distribuições padrão e contas que você possui, e ajuda a proteger as informações daquelas que você não possui.

   ```
   {
       "ConflictingAliasesList": {
           "MaxItems": 100,
           "Quantity": 1,
           "Items": [
               {
                   "Alias": "www.example.com",
                   "DistributionId": "*******EXAMPLE",
                   "AccountId": "******112233"
               }
           ]
       }
   }
   ```

   A resposta lista os nomes de domínio alternativos que entram em conflito ou se sobrepõem ao que você especificou.

**Exemplo**
   + Se você especificar *www.exemplo.com*, a resposta incluirá www.exemplo.com e o nome de domínio alternativo curinga sobreposto (\$1.exemplo.com), se ele existir.
   + Se você especificar *\$1.exemplo.com*, a resposta incluirá \$1.exemplo.com e quaisquer nomes de domínio alternativos cobertos por esse curinga (por exemplo, www.exemplo.com, teste.exemplo.com, dev.exemplo.com e assim por diante).

1. Encontre a distribuição padrão para o nome de domínio alternativo que você está movendo e anote o ID da Conta da AWS. Compare esse ID da conta com o ID da conta em que você criou a distribuição padrão de destino na [etapa anterior](alternate-domain-names-move-create-target.md). Em seguida, você pode determinar se essas duas distribuições padrão estão na mesma Conta da AWS e como mover o nome de domínio alternativo.

   Para obter mais informações, consulte o comando [https://docs.aws.amazon.com//cli/latest/reference/cloudfront/list-conflicting-aliases.html](https://docs.aws.amazon.com//cli/latest/reference/cloudfront/list-conflicting-aliases.html) na *Referência da AWS Command Line Interface*.

------

Em seguida, consulte o tópico a seguir para mover o nome de domínio alternativo.

# Mover o nome de domínio alternativo
<a name="alternate-domain-names-move-options"></a>

Dependendo da sua situação, escolha uma das seguintes formas de mover o nome de domínio alternativo:

**As distribuições de origem e de destino (padrão ou locatário) estão na mesma Conta da AWS**  
Use o comando **update-domain-association** na AWS Command Line Interface (AWS CLI) para mover o nome de domínio alternativo.   
Esse método funciona para todas as movimentações da mesma conta, inclusive quando o nome de domínio alternativo é um domínio apex (também chamado de *domínio raiz*, como exemplo.com).

**As distribuições de origem e de destino (padrão ou locatário) estão em diferentes Contas da AWS**  
Se você tiver acesso à distribuição de origem ou locatário da distribuição, o nome de domínio alternativo *não* será um domínio apex e, se ainda não estiver usando um curinga que se sobreponha a esse nome de domínio alternativo, use um curinga para mover o nome de domínio alternativo. Para obter mais informações, consulte [Usar um curinga para mover um nome de domínio alternativo](#alternate-domain-names-move-use-wildcard).  
Se não tiver acesso à conta da Conta da AWS que tem a distribuição padrão de origem ou locatário da distribuição, você poderá tentar usar o comando **update-domain-association** para mover o nome de domínio alternativo. A distribuição padrão de origem ou o locatário da distribuição deve ser desabilitado antes que você possa mover o nome de domínio alternativo. Para obter ajuda adicional, consulte [Entre em contato com o AWS Support para mover um nome de domínio alternativo](#alternate-domain-names-move-contact-support).

**nota**  
Você pode usar o comando **associate-alias**, mas esse comando só oferece suporte a distribuições padrão. Consulte [AssociateAlias](https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_AssociateAlias.html) na *Referência da API do Amazon CloudFront*.

------
#### [ update-domain-association (standard distributions and distribution tenants) ]

**Para usar `update-domain-association` para mover um nome de domínio alternativo**

1. Utilize o comando `update-domain-association`, conforme mostrado no exemplo a seguir. 

   1. Substitua *exemplo.com* pelo nome de domínio alternativo e especifique o ID da distribuição padrão de destino ou do locatário da distribuição. 

   1. Execute este comando usando as credenciais que estão na mesma Conta da AWS que a distribuição padrão de destino ou locatário da distribuição.
**Observe as seguintes restrições**  
Além da permissão `cloudfront:UpdateDomainAssociation`, você deve ter a permissão `cloudfront:UpdateDistribution` para atualizar uma distribuição padrão. Para atualizar um locatário de distribuição, você deve ter a permissão `cloudfront:UpdateDistributionTenant`.
Se as distribuições de origem e de destino (padrão ou locatário) estiverem em diferentes Contas da AWS, a origem deverá ser desativada antes que você possa mover o domínio.
A distribuição de destino deve ser configurada conforme descrito em [Configurar a distribuição padrão de destino ou o locatário de distribuição](alternate-domain-names-move-create-target.md).

   **Solicitação**

   ```
   aws cloudfront update-domain-association \
     --domain "www.example.com" \
     --target-resource DistributionTenantId=dt_9Fd3xTZq7Hl2KABC \
     --if-match E3UN6WX5ABC123
   ```

   **Resposta**

   ```
   {
       "ETag": "E7Xp1Y3N9DABC",
       "Domain": "www.example.com",
       "ResourceId": "dt_9Fd3xTZq7Hl2KABC"
   }
   ```

   Esse comando remove o nome de domínio alternativo da distribuição padrão de origem ou do locatário da distribuição e o adiciona à distribuição padrão de destino ou locatário da distribuição.

1. Depois que a distribuição de destino estiver totalmente implantada, atualize sua configuração de DNS para apontar seu nome de domínio para o endpoint de roteamento do CloudFront. Por exemplo, seu registro DNS apontaria seu nome de domínio alternativo (`www.example.com`) para o nome de domínio fornecido pelo CloudFront d111111abcdef8.cloudfront.net. Se o destino for um locatário de distribuição, especifique o endpoint do grupo de conexão. Para obter mais informações, consulte [Apontar domínios para o CloudFront](managed-cloudfront-certificates.md#point-domains-to-cloudfront).

------
#### [ associate-alias (standard distributions only) ]

**Para usar `associate-alias` para mover um nome de domínio alternativo**

1. Utilize o comando `associate-alias`, conforme mostrado no exemplo a seguir. 

   1. Substitua *www.exemplo.com* pelo nome de domínio alternativo e *EDFDVBD6EXAMPLE* pelo ID da distribuição padrão de destino. 

   1. Execute este comando usando credenciais que estão na mesma Conta da AWS que a distribuição padrão de destino.
**Observe as seguintes restrições**  
Você deve ter as permissões `cloudfront:AssociateAlias` e `cloudfront:UpdateDistribution` na distribuição padrão de destino.
Se as distribuições padrão de origem e de destino estiverem na mesma Conta da AWS, você deverá ter permissão `cloudfront:UpdateDistribution` na distribuição padrão de origem.
Se a distribuição padrão de origem e a distribuição padrão de destino estiverem em diferentes Contas da AWS, você deverá primeiro desabilitar a distribuição padrão de origem.
A distribuição padrão de destino deve ser configurada conforme descrito em [Configurar a distribuição padrão de destino ou o locatário de distribuição](alternate-domain-names-move-create-target.md).

      **Solicitação**

      ```
      aws cloudfront associate-alias \
      --alias www.example.com \
      --target-distribution-id EDFDVBD6EXAMPLE
      ```

      Este comando remove o nome de domínio alternativo da distribuição padrão de origem e move-o para a distribuição padrão de destino.

1. Depois que a distribuição padrão de destino estiver totalmente implantada, atualize sua configuração de DNS para apontar o registro de DNS do nome de domínio alternativo para o nome de domínio da distribuição padrão de destino. Por exemplo, seu registro DNS apontaria seu nome de domínio alternativo (`www.example.com`) para o nome de domínio fornecido pelo CloudFront d111111abcdef8.cloudfront.net.

Para obter mais informações, consulte o comando [https://awscli.amazonaws.com/v2/documentation/api/latest/reference/cloudfront/associate-alias.html](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/cloudfront/associate-alias.html) na *Referência de comandos da AWS CLI*.

------

## Usar um curinga para mover um nome de domínio alternativo
<a name="alternate-domain-names-move-use-wildcard"></a>

Se a distribuição de origem estiver em uma Conta da AWS diferente da distribuição de destino e a distribuição de origem estiver habilitada, você poderá usar um curinga para mover o nome de domínio alternativo.

**nota**  
Você não pode usar um caractere curinga para mover um domínio apex (como exemplo.com). Para mover um domínio apex quando as distribuições de origem e de destino estiverem em Contas da AWS diferentes, entre em contato com o Suporte. Para obter mais informações, consulte [Entre em contato com o AWS Support para mover um nome de domínio alternativo](#alternate-domain-names-move-contact-support).

**Para usar um curinga para mover um nome de domínio alternativo**
**nota**  
Esse processo envolve várias atualizações para suas distribuições. Aguarde até que cada distribuição implante totalmente a última alteração antes de prosseguir para a próxima etapa.

1. Atualize a distribuição de destino para adicionar um nome de domínio alternativo curinga que cubra o nome de domínio alternativo que você está movendo. Por exemplo, se o nome de domínio alternativo que você está movendo for www.exemplo.com, adicione o nome de domínio alternativo \$1.exemplo.com à distribuição de destino. Para fazer isso, o certificado SSL/TLS na distribuição de destino deve incluir o nome de domínio curinga. Para obter mais informações, consulte [Atualizar uma distribuição](HowToUpdateDistribution.md).

1. Atualize as configurações de DNS para o nome de domínio alternativo para apontar para o nome de domínio da distribuição de destino. Por exemplo, se o nome de domínio alternativo que você está movendo for www.exemplo.com, atualize o registro de DNS para www.exemplo.com para rotear o tráfego para o nome de domínio da distribuição de destino (por exemplo, d111111abcdef8.cloudfront.net).
**nota**  
Mesmo depois que as configurações de DNS forem atualizadas, o nome de domínio alternativo ainda será atendido pela distribuição de origem, pois é nela que o nome de domínio alternativo está configurado no momento.

1. Atualize a distribuição de origem para remover o nome de domínio alternativo. Para obter mais informações, consulte [Atualizar uma distribuição](HowToUpdateDistribution.md).

1. Atualize a distribuição de destino para adicionar o nome de domínio alternativo. Para obter mais informações, consulte [Atualizar uma distribuição](HowToUpdateDistribution.md).

1. Use o **dig** (ou uma ferramenta de consulta de DNS semelhante) para validar que o registo de DNS para o nome de domínio alternativo está sendo resolvido para o nome de domínio da distribuição de destino.

1. (Opcional) Atualize a distribuição de destino para remover o nome de domínio alternativo curinga.

## Entre em contato com o AWS Support para mover um nome de domínio alternativo
<a name="alternate-domain-names-move-contact-support"></a>

Se as distribuições de origem e de destino estiverem em Contas da AWS diferentes e você não tiver acesso à Conta da AWS da distribuição de origem ou não puder desabilitar a distribuição de origem, você poderá entrar em contato com o Suporte para mover o nome de domínio alternativo.

**Para entrar em contato com o Suporte para mover um nome de domínio alternativo**

1. Configure uma distribuição de destino, incluindo o registro TXT de DNS que aponta para a distribuição de destino. Para obter mais informações, consulte [Configurar a distribuição padrão de destino ou o locatário de distribuição](alternate-domain-names-move-create-target.md).

1. [Entre em contato com o Suporte](https://console.aws.amazon.com/support/home) para solicitar uma verificação de que você é o proprietário do domínio e mover o domínio para a nova distribuição do CloudFront para você.

1. Depois que a distribuição de destino estiver totalmente implantada, atualize sua configuração de DNS para apontar o registro de DNS do nome de domínio alternativo para o nome de domínio da distribuição de destino.

# Remover um nome de domínio alternativo
<a name="alternate-domain-names-remove-domain"></a>

Se você quiser interromper o roteamento do tráfego de um domínio ou subdomínio para uma distribuição do CloudFront, siga as etapas nesta seção para atualizar a configuração de DNS e a configuração de distribuição do CloudFront.

É importante que você remova os nomes de domínio alternativos da distribuição e atualize sua configuração DNS. Isso ajudará a evitar problemas posteriormente se você quiser associar o nome de domínio a outra distribuição do CloudFront. Se um nome de domínio alternativo já estiver associado a uma distribuição, ele não poderá ser configurado com outra.

**nota**  
Se você quiser remover o nome de domínio alternativo dessa distribuição para que possa adicioná-lo a outra, siga as etapas em [Mover um nome de domínio alternativo](alternate-domain-names-move.md). Se você seguir as etapas descritas aqui (para remover um domínio) e depois adicionar o domínio a outra distribuição, haverá um período durante o qual o domínio não será vinculado à nova distribuição porque o CloudFront estará propagando as atualizações para os pontos de presença.<a name="RemovingADomain"></a>

**Para remover o nome de domínio alternativo de uma distribuição**

1. Para começar, roteie o tráfego da Internet do seu domínio para outro recurso que não seja sua distribuição do CloudFront, como um balanceador de carga do Elastic Load Balancing. Se preferir, exclua o registro de DNS que direciona o tráfego para o CloudFront.

   Siga um destes procedimentos, dependendo do serviço DNS do seu domínio:
   + **Se estiver usando o Route 53**, atualize ou exclua registros de alias ou registros CNAME. Para mais informações, consulte [Editar registros](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/resource-record-sets-editing.html) ou [Excluir registros](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/resource-record-sets-deleting.html).
   + **Se estiver usando outro provedor de serviços de DNS**, use o método fornecido pelo provedor de serviços de DNS para atualizar ou excluir o registro CNAME que direciona o tráfego para o CloudFront. Para obter mais informações, consulte a documentação fornecida por seu provedor de serviço de DNS.

1. Depois de atualizar os registros DNS do seu domínio, aguarde até que as alterações sejam propagadas e os resolvedores de DNS estejam roteando o tráfego para o novo recurso. Você pode verificar quando o processo foi concluído criando alguns links de teste que usam seu domínio no URL.

1. Faça login no Console de gerenciamento da AWS, abra o console do CloudFront em [https://console.aws.amazon.com/cloudfront/v4/home](https://console.aws.amazon.com/cloudfront/v4/home) e atualize sua distribuição do CloudFront para remover o nome de domínio fazendo o seguinte:

   1. Escolha o ID da distribuição que você deseja atualizar.

   1. Na guia **General**, escolha **Edit**.

   1. Em **Alternate Domain Names (CNAMEs)**, remova o nome de domínio alternativo (ou nomes de domínio) que você não quer mais usar na sua distribuição.

   1. Escolha **Yes, Edit**.

# Usar curingas em nomes de domínio alternativos
<a name="alternate-domain-names-wildcard"></a>

Ao adicionar nomes de domínio alternativos, você pode usar o curinga "\$1" no início de um nome de domínio, em vez de adicionar cada subdomínio. Por exemplo, com um nome de domínio alternativo de \$1.exemplo.com, você pode usar qualquer nome de domínio que termine com exemplo.com em seus URLs, como www.exemplo.com, nome\$1do\$1produto.exemplo.com, marketing.nome\$1do\$1produto.exemplo.com e assim por diante. Caminho para o objeto permanece o mesmo, independentemente do nome de domínio, por exemplo:
+ www.exemplo.com/images/image.jpg
+ nome\$1do\$1produto.exemplo.com/images/image.jpg
+ marketing.nome\$1do\$1produto.exemplo.com/images/image.jpg

Siga estes requisitos para nomes de domínio alternativos que incluem curingas:
+ O nome de domínio alternativo deve começar com um asterisco e um ponto (\$1.).
+ *Não é possível* usar um curinga para substituir parte de um nome de subdomínio, como em \$1domínio.exemplo.com.
+ Não é possível substituir um subdomínio no meio de um nome de domínio, como em subdomínio.\$1.exemplo.com.
+ Todos os nomes de domínio alternativos, incluindo nomes de domínio alternativo que usam caracteres curingas, devem estar cobertos pelo nome alternativo da entidade (SAN) no certificado.

Um nome de domínio alternativo curinga, como \$1.exemplo.com, pode incluir outro nome de domínio alternativo em uso, como exemplo.com.

# Usar WebSockets com distribuições do CloudFront
<a name="distribution-working-with.websockets"></a>

O Amazon CloudFront oferece suporte ao uso de WebSocket, um protocolo baseado em TCP que é útil quando forem necessárias conexões bidirecionais de longa duração entre clientes e servidores. Uma conexão persistente normalmente é um requisito com aplicativos em tempo real. Os cenários nos quais convém usar Websockets incluem plataformas de bate-papo sociais, espaços de trabalho de colaboração online, jogos multijogador e serviços que fornecem dados em tempo real, como feeds de plataformas de transações financeiras. Os dados sobre uma conexão WebSocket pode fluir em ambas as direções para comunicação full-duplex. 

A funcionalidade WebSocket é habilitada automaticamente para que funcione com qualquer distribuição. Para usar o WebSockets, configure uma das seguintes opções no comportamento do cache anexado à sua distribuição:
+ Encaminhe todos os cabeçalhos para sua origem. É possível usar a [política de solicitação de origem gerenciada do AllViewer](using-managed-origin-request-policies.md#managed-origin-request-policy-all-viewer).
+ Encaminhe especificamente os cabeçalhos de solicitação `Sec-WebSocket-Key` e `Sec-WebSocket-Version` em sua política de solicitação de origem.

## Como o protocolo WebSocket funciona
<a name="distribution-working-with.websockets.how-it-works"></a>

O protocolo WebSocket é um protocolo independente baseado em TCP que permite que você evite parte da sobrecarga, e possivelmente maior latência, de HTTP.

Para estabelecer uma conexão WebSocket, o cliente envia uma solicitação HTTP normal que usa semântica de atualização do HTTP para alterar o protocolo. O servidor pode concluir o handshake. A conexão WebSocket permanece aberta, e o cliente ou servidor pode enviar dados quadros entre si sem a necessidade de estabelecer novas conexões a cada vez.

Por padrão, o protocolo WebSocket usa a porta 80 para conexões WebSocket regulares e a porta 443 para conexões WebSocket sobre TLS. As opções [Política de protocolo do visualizador](DownloadDistValuesCacheBehavior.md#DownloadDistValuesViewerProtocolPolicy) e [Protocolo (somente origens personalizadas)](DownloadDistValuesOrigin.md#DownloadDistValuesOriginProtocolPolicy) que você escolher para o CloudFront se aplicam a conexões WebSocket e também ao tráfego HTTP.

## Requisitos de WebSocket
<a name="distribution-working-with.websockets.requirements"></a>

Solicitações WebSocket devem estar em conformidade com a [RFC 6455](https://datatracker.ietf.org/doc/html/rfc6455) nos formatos padrão a seguir.

**Example Exemplo de solicitação de cliente**  

```
GET /chat HTTP/1.1
Host: server.example.com
Upgrade: websocket
Connection: Upgrade
Sec-WebSocket-Key: dGhlIHNhbXBsZSBub25jZQ==
Origin: https://example.com
Sec-WebSocket-Protocol: chat, superchat
Sec-WebSocket-Version: 13
```

**Example Exemplo de resposta de servidor**  

```
HTTP/1.1 101 Switching Protocols
Upgrade: websocket
Connection: Upgrade
Sec-WebSocket-Accept: s3pPLMBiTxaQ9kYGzzhZRbK+xOo=
Sec-WebSocket-Protocol: chat
```

Se a conexão WebSocket for desconectada pelo cliente, servidor ou interrupção da rede, os aplicativos cliente deverão reiniciar a conexão com o servidor.

## Cabeçalhos WebSocket recomendados
<a name="distribution-working-with.websockets.recomended-settings"></a>

Para evitar problemas inesperados relacionados a compactação ao usar o WebSockets, recomendamos que você inclua os seguintes cabeçalhos em uma [política de solicitação para a origem](origin-request-create-origin-request-policy.md):
+ `Sec-WebSocket-Key`
+ `Sec-WebSocket-Version`
+ `Sec-WebSocket-Protocol`
+ `Sec-WebSocket-Accept`
+ `Sec-WebSocket-Extensions`

**nota**  
No momento, o CloudFront só permite conexões de WebSocket pelo protocolo HTTP/1.1.

# Solicite IPs estáticos anycast para usar na lista de permissões
<a name="request-static-ips"></a>

Você pode solicitar IPs estáticos anycast do CloudFront para usar com suas distribuições. As listas de IPs estáticos anycast podem conter apenas endereços IP IPv4 ou endereços IP IPv4 e IPv6. Esses endereços IP são dedicadas à sua Conta da AWS e estão espalhadas por regiões geográficas.

Você pode solicitar que 21 endereços IP estáticos anycast sejam incluídos na lista de permissões dos provedores de rede para que possa isentar os visualizadores que acessam sua aplicação de cobranças de dados. Ou você pode usar esses IPs estáticos em firewalls de segurança de saída para controlar a troca de tráfego com aplicações aprovadas. As listas de IP estáticos Anycast podem ser usadas com uma ou mais distribuições.

Se você quiser habilitar o roteamento de domínios apex (como exemplo.com) diretamente para suas distribuições do CloudFront, você pode solicitar três endereços IP estáticos anycast para esse caso de uso. Em seguida, adicione registros A em seu DNS a fim de apontar o domínio apex para o CloudFront.

Os IPs estáticos anycast funcionam com [indicação do nome do servidor (SNI)](https://en.wikipedia.org/wiki/Server_Name_Indication). Para obter mais informações, consulte [Usar SNI para atender a solicitações HTTPS (funciona para a maioria dos clientes)](cnames-https-dedicated-ip-or-sni.md#cnames-https-sni).

## Pré-requisitos
<a name="anycast-static-ip-prereqs"></a>

Para usar listas de IPs estáticos anycast com uma distribuição do CloudFront, você deve selecionar **Usar todos os locais da borda** para a classe de preço da distribuição. Para ter mais informações sobre os preços, consulte [Preços do CloudFront](https://aws.amazon.com/cloudfront/pricing/).

## Solicitar uma lista de IPs estáticos anycast
<a name="request-static-ip-list"></a>

Solicite uma lista de IPs estáticos anycast para usar com sua distribuição do CloudFront.

**Como solicitar uma lista de IPs estáticos anycast**

1. Faça login no Console de gerenciamento da AWS e abra o console do CloudFront em [https://console.aws.amazon.com/cloudfront/v4/home](https://console.aws.amazon.com/cloudfront/v4/home).

1. No painel de navegação à esquerda, escolha **IPs estáticos**.

1. Em **Solicitação**, escolha o link para entrar em contato com a engenharia de suporte do CloudFront.

1. Forneça informações sobre sua workload (bytes de solicitação por segundo e solicitações por segundo).

1. A engenharia de suporte do CloudFront analisa sua solicitação. O processo de análise pode levar até dois dias.

Depois que sua solicitação for aprovada, você poderá criar uma lista de IPs estáticos anycast e associá-la a uma ou mais distribuições.

## Criar uma lista de IPs estáticos anycast
<a name="create-static-ip-list"></a>

Antes de começar, solicite uma lista de IPs estáticos anycast, conforme explicado na seção anterior.

**Criar uma lista de IPs estáticos anycast**

1. Faça login no Console de gerenciamento da AWS e abra o console do CloudFront em [https://console.aws.amazon.com/cloudfront/v4/home](https://console.aws.amazon.com/cloudfront/v4/home).

1. No painel de navegação à esquerda, escolha **IPs estáticos**.

1. Escolha **Criar lista de IPs anycast**.

1. **Nome**, insira um nome.

1. Para **casos de uso de IP estático**, selecione o caso de uso apropriado.

1. Em **Tipo de endereço IP**, especifique uma das seguintes opções:
   + **IPv4**: aloque uma lista somente de endereços IPv4. 
   + **Pilha dupla**: aloque uma lista de endereços IPv4 e IPv6.

1. Examine os termos de serviço e preços e escolha **Enviar**.

Depois que sua lista de IPs estáticos for criada, você poderá visualizar os endereços IP alocados na página de detalhes da lista de IPs estáticos. Você também pode associar distribuições à lista de IPs estáticos.

## Associar uma lista de IPs estáticos anycast a uma distribuição existente
<a name="associate-static-ip-list-existing"></a>

Antes de começar, solicite e crie uma lista de IPs estáticos anycast, conforme explicado na seções anteriores. 

Verifique se as seguintes configurações de distribuição são compatíveis com sua lista de IPs estáticos anycast: 
+ [Classe de preço](DownloadDistValuesGeneral.md#DownloadDistValuesPriceClass) tem a configuração **Usar todos os locais da borda (melhor desempenho)**.
+ Se [IPv6](cloudfront-enable-ipv6.md) estiver habilitado, você poderá associar uma lista de IPs estáticos anycast de pilha dupla. Uma lista de IPs estáticos anycast que tenha somente endereços IPv4 não pode ser associada a distribuições com IPv6 habilitado.

**Como associar uma lista de IPs estáticos anycast a uma distribuição existente**
+ Execute um destes procedimentos:
  + Associe a lista de IPs estáticos na página de detalhes da lista de IPs estáticos:

    1. Faça login no Console de gerenciamento da AWS e abra o console do CloudFront em [https://console.aws.amazon.com/cloudfront/v4/home](https://console.aws.amazon.com/cloudfront/v4/home).

    1. Escolha **IPs estáticos** no painel de navegação à esquerda.

    1. Escolha o nome de sua lista de IPs estáticos.

    1. Escolha **Associar distribuições**.

    1. Selecione uma ou mais distribuições e escolha **Associar distribuições**.
  + Associe a lista de IPs estáticos na página de detalhes da distribuição:

    1. Faça login no Console de gerenciamento da AWS e abra o console do CloudFront em [https://console.aws.amazon.com/cloudfront/v4/home](https://console.aws.amazon.com/cloudfront/v4/home).

    1. Escolha **Distribuições** no painel de navegação à esquerda.

    1. Escolha o nome de sua distribuição.

    1. Na guia **Geral**, em **Configurações**, escolha **Editar**.

    1. Em **Lista de IPs anycast**, selecione a lista de IPs estáticos anycast a ser usada com essa distribuição.

    1. Escolha **Salvar alterações**.

## Associar uma lista de IPs estáticos anycast a uma nova distribuição
<a name="associate-static-ip-list-new"></a>

Antes de começar, solicite e crie uma lista de IPs estáticos anycast, conforme explicado na seções anteriores.

**Como associar uma lista de IPs estáticos anycast a uma nova distribuição**
+ Criar uma distribuição do . Para obter mais informações, consulte [Criar uma distribuição do CloudFront no console](distribution-web-creating-console.md#create-console-distribution). Em **Configurações**, é necessário fazer as seguintes seleções para usar a lista de IPs estáticos anycast:
  + Em **Lista de IPs anycast**, selecione sua lista de IPs estáticos anycast na lista suspensa.
  + Em **Classe de preço**, selecione **Usar todos os locais da borda (melhor desempenho)**.
  + **Observação:** se o IP estático anycast estiver usando somente IPv4 e não pilha dupla, selecione **Desligado** em **IPv6**.

Finalize a criação da distribuição. Você pode escolher quaisquer outras configurações que não sejam necessárias para as listas de IP estáticos anycast com base em suas necessidades.

Para ter mais informações sobre cotas relacionadas às listas de IPs estáticos anycast, consulte [Amazon CloudFront endpoints and quotas](https://docs.aws.amazon.com/general/latest/gr/cf_region.html#limits_cloudfront) na *Referência geral da AWS*.

## Associar uma lista de IPs estáticos anycast a um grupo de conexões
<a name="associate-anycast-ip-connection-group"></a>

Antes de começar, solicite e crie uma lista de IPs estáticos anycast, conforme explicado na seções precedentes.

**Como associar uma lista de IPs estáticos anycast a um novo grupo de conexões**

1. Verifique se você habilitou os grupos de conexão em **Configurações**.

1. Crie um grupo de conexões. Para ter mais informações, consulte [Criar grupo de conexões personalizado](custom-connection-group.md).

1. Em **Configurações**, é necessário fazer as seguintes seleções para usar a lista de IPs estáticos anycast:

   1. Em **Lista de IPs anycast**, selecione sua lista de IPs estáticos anycast na lista suspensa.

1. Finalize a criação do grupo de conexões. 

**nota**  
Se o IP estático anycast estiver usando somente IPv4 e não pilha dupla, selecione **Desligado** em **IPv6**.

Para ter mais informações sobre cotas relacionadas às listas de IPs estáticos anycast, consulte [Amazon CloudFront endpoints and quotas](https://docs.aws.amazon.com/general/latest/gr/cf_region.html#limits_cloudfront) na *Referência geral da Amazon Web Services*. 

## Atualizar uma lista de IPs estáticos anycast
<a name="update-static-ip-list"></a>

Depois de criar um endereço IP estático anycast e associá-lo a uma distribuição, você pode alterar o tipo de endereço IP da lista de IP estáticos anycast.

**Como atualizar uma lista de IPs estáticos anycast**

1. Faça login no Console de gerenciamento da AWS e abra o console do CloudFront em [https://console.aws.amazon.com/cloudfront/v4/home](https://console.aws.amazon.com/cloudfront/v4/home).

1. No painel de navegação à esquerda, escolha **IPs estáticos**.

1. Escolha o nome de sua lista de IPs estáticos.

1. Escolha **Editar**.

1. Em **Tipo de endereço IP**, especifique uma das seguintes opções:
   + **IPv4**: aloque uma lista somente de endereços IPv4. 
   + **Pilha dupla**: aloque uma lista de endereços IPv4 e IPv6.
**nota**  
Não será possível escolher **IPv4** se sua distribuição associada já tiver habilitado o IPv6. Para fazer isso, desabilite o IPv6 antes de atualizar o tipo de endereço IP do IP estático anycast. Para obter mais informações, consulte [Habilitar IPv6 para distribuições do CloudFront](cloudfront-enable-ipv6.md).

1. Escolha **Enviar** para salvar as alterações e atualizar a lista de IPs estáticos anycast.

# Traga seu próprio IP para o CloudFront usando o IPAM
<a name="bring-your-own-ip-address-using-ipam"></a>

Este tutorial mostra como usar o IPAM para gerenciar CIDRs BYOIP para listas de IP estáticos anycast do CloudFront.

**Topics**
+ [O que é BYOIP para IPs estáticos anycast?](#what-is-byoip-anycast)
+ [Por que usar esse recurso?](#why-use-byoip)
+ [Pré-requisitos](#byoip-prerequisites)
+ [Etapa 1: solicitar uma lista de IPs estáticos anycast](#request-anycast-static-ip-list)
+ [Etapa 2: criar uma lista de IPs estáticos anycast](#create-anycast-static-ip-list)
+ [Etapa 3: criar uma distribuição do CloudFront](#create-cloudfront-distribution)
+ [Etapa 4: realizar a associação com recursos do CloudFront](#associate-with-cloudfront-resources)
+ [Etapa 5: Preparar-se para a migração](#prepare-for-migration)
+ [Etapa 6: anunciar o CIDR globalmente](#advertise-cidr-globally)

## O que é BYOIP para IPs estáticos anycast?
<a name="what-is-byoip-anycast"></a>

O CloudFront permite trazer endereços IPv4 próprios por meio do BYOIP do IPAM para serviços globais. Por meio da interface unificada do IPAM, os clientes podem criar grupos de endereços IP dedicados usando endereços IP próprios (BYOIP), atribuí-los às distribuições do CloudFront e utilizar a rede mundial de distribuição de conteúdo da AWS para entregar aplicações e conteúdo. Os endereços IP são anunciados em vários locais da borda do CloudFront simultaneamente usando o roteamento anycast.

## Por que usar esse recurso?
<a name="why-use-byoip"></a>

**Controlar o acesso à rede nas listas de permissões para:**
+ Criar uma lista de endereços IP permitidos com provedores de rede para dispensar cobranças de dados para visualizadores aprovados.
+ Configurar firewalls de segurança de saída para autorizar o tráfego somente a aplicações aprovadas.

**Simplificar operações e migrações**
+ Encaminhe domínios ápex (exemplo.com) diretamente ao CloudFront adicionando registros A que apontem para seus IPs estáticos.
+ Migre de outras CDNs sem atualizar a infraestrutura de IP ou as configurações de firewall.
+ Mantenha as listas de permissões de IP existentes com parceiros e clientes.
+ Compartilhe uma única lista de IPs estáticos anycast em várias distribuições do CloudFront.

**Manter a consistência da identidade de marca**
+ Mantenha seu espaço de endereço IP existente para ter uma identidade de marca consistente ao mudar para a AWS.

## Pré-requisitos
<a name="byoip-prerequisites"></a>

Para usar listas de IPs estáticos anycast com uma distribuição do CloudFront, você deve selecionar **Usar todos os locais da borda** para a classe de preço da distribuição. Para ter mais informações sobre os preços, consulte [Preços do CloudFront](https://aws.amazon.com/cloudfront/pricing/). Para traga seu próprio IP (BYOIP), também é necessário desabilitar o IPv6 para a distribuição ou o grupo de conexões.

Conclua estas etapas antes de começar:
+ Configuração do IPAM: consulte [Integrar o IPAM a contas](https://docs.aws.amazon.com/vpc/latest/ipam/enable-integ-ipam.html) e [Criar um IPAM](https://docs.aws.amazon.com/vpc/latest/ipam/create-ipam.html).
+ Verificação de domínio: [Verificar o controle do domínio](https://docs.aws.amazon.com/vpc/latest/ipam/tutorials-byoip-ipam-domain-verification-methods.html).
+ Crie um grupo de nível superior: siga as Etapas 1 e 2 em [Traga seu próprio CIDR IPv4 para o IPAM](https://docs.aws.amazon.com/vpc/latest/ipam/tutorials-byoip-ipam-console-ipv4.html).
+ Crie um grupo de IPAM utilizando a localidade global para usar com o CloudFront. Para ter mais informações, consulte [Traga seu próprio IP para o CloudFront usando o IPAM](https://docs.aws.amazon.com/vpc/latest/ipam/tutorials-byoip-cloudfront.html).

**nota**  
Requer **três blocos CIDR IPv4 /24**.

## Etapa 1: solicitar uma lista de IPs estáticos anycast
<a name="request-anycast-static-ip-list"></a>

Solicite uma lista de IPs estáticos anycast para usar com sua distribuição do CloudFront.<a name="request-anycast-static-ip-list-procedure"></a>

**Como solicitar uma lista de IPs estáticos anycast**

1. Faça login no Console de gerenciamento da AWS e abra o console do CloudFront em [https://console.aws.amazon.com/cloudfront/v4/home](https://console.aws.amazon.com/cloudfront/v4/home).

1. No painel de navegação à esquerda, escolha **IPs estáticos**.

1. Em **Solicitação**, escolha o link para entrar em contato com a engenharia de suporte do CloudFront.

1. Forneça informações sobre sua workload (bytes de solicitação por segundo e solicitações por segundo).

1. A engenharia de suporte do CloudFront analisa sua solicitação. O processo de análise pode levar até dois dias.

1. Depois que sua solicitação for aprovada, você poderá criar uma lista de IPs estáticos anycast e associá-la a uma ou mais distribuições.

## Etapa 2: criar uma lista de IPs estáticos anycast
<a name="create-anycast-static-ip-list"></a>

Antes de começar, solicite uma lista de IPs estáticos anycast, conforme explicado na seção anterior.<a name="create-anycast-static-ip-list-procedure"></a>

**Criar uma lista de IPs estáticos anycast**

1. Faça login no Console de gerenciamento da AWS e abra o console do CloudFront em [https://console.aws.amazon.com/cloudfront/v4/home](https://console.aws.amazon.com/cloudfront/v4/home).

1. No painel de navegação à esquerda, escolha **IPs estáticos**.

1. Escolha **Criar lista de IPs anycast**.

1. **Nome**, insira um nome.

1. Em **Casos de uso de IP estático**, selecione **BYOIP** como seu caso de uso.

As seguintes etapas diferem do processo BYOIP regional padrão e estabelecem o padrão para serviços globais:

### AWS CLI
<a name="create-anycast-cli"></a>

Instalar ou atualizar a versão mais recente da AWS CLI. Para saber mais, consulte o [Guia do usuário do AWS Command Line Interface](https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html).

1. Recupere o IpamPoolArn do grupo do IPAM em que os blocos CIDR foram provisionados. Para ter mais informações, consulte [Traga seu próprio CIDR IPv4 público para o IPAM usando somente a AWS CLI](https://docs.aws.amazon.com/vpc/latest/ipam/tutorials-byoip-ipam-ipv4.html).

1. Crie uma lista de IPs anycast com os blocos CIDR e a configuração do IPAM:

   ```
   aws cloudfront create-anycast-ip-list \
       --name byoip-aip-1 \
       --ip-count 3 \
       --region us-east-1 \
       --ip-address-type ipv4 \
       --ipam-cidr-configs '[{"Cidr":"1.1.1.0/24","IpamPoolArn":"arn:aws:ec2::123456789012:ipam-pool/ipam-pool-005d58a8aa8147abc"},{"Cidr":"2.2.2.0/24","IpamPoolArn":"arn:aws:ec2::123456789012:ipam-pool/ipam-pool-005d58a8aa8147abc"},{"Cidr":"3.3.3.0/24","IpamPoolArn":"arn:aws:ec2::123456789012:ipam-pool/ipam-pool-005d58a8aa8147abc"}]'
   ```

**nota**  
Não é possível selecionar o endereço IP específico do grupo. O CloudFront faz isso automaticamente.

## Etapa 3: criar uma distribuição do CloudFront
<a name="create-cloudfront-distribution"></a>

Para o CloudFront, você pode seguir as instruções para [criar uma distribuição padrão](distribution-web-creating-console.md) ou [usar distribuições multilocatário](distribution-config-options.md).

## Etapa 4: realizar a associação com recursos do CloudFront
<a name="associate-with-cloudfront-resources"></a>
+ [Associar uma lista de IPs estáticos anycast a uma distribuição existente](request-static-ips.md#associate-static-ip-list-existing)
+ [Associar uma lista de IPs estáticos anycast a uma nova distribuição](request-static-ips.md#associate-static-ip-list-new)
+ [Associar uma lista de IPs estáticos anycast a um grupo de conexões](request-static-ips.md#associate-anycast-ip-connection-group)

## Etapa 5: Preparar-se para a migração
<a name="prepare-for-migration"></a>

Para ter mais informações, consulte [Etapa 4: preparar-se para a migração](https://docs.aws.amazon.com/vpc/latest/ipam/tutorials-byoip-cloudfront.html#step-4-prepare-for-migration) no *Guia do usuário da Amazon VPC*.

## Etapa 6: anunciar o CIDR globalmente
<a name="advertise-cidr-globally"></a>

Para ter mais informações, consulte [Etapa 5: anunciar o CIDR globalmente](https://docs.aws.amazon.com/vpc/latest/ipam/tutorials-byoip-cloudfront.html#step-5-advertise-cidr-globally) no *Guia do usuário da Amazon VPC*.

# Usar gRPC com distribuições do CloudFront
<a name="distribution-using-grpc"></a>

O Amazon CloudFront é compatível com gRPC, um framework de chamada de procedimento remoto (RPC) de código aberto baseado em HTTP/2. O gRPC oferece streaming bidirecional e protocolo binário com buffer de carga útil, tornando-o adequado para aplicações que exigem comunicações de baixa latência.

O CloudFront recebe solicitações gRPC e as envia por proxy diretamente para as origens. É possível usar o CloudFront para fazer proxy de quatro tipos de serviços de gRPC:
+ RPC unário
+ Streaming de RPC de servidor
+ Streaming de RPC de cliente
+ Streaming de RPC bidirecional

## Como o gRPC funciona no CloudFront
<a name="how-grpc-works-cloudfront"></a>

Para configurar o gRPC no CloudFront, defina uma origem que forneça um serviço de gRPC como origem da distribuição. É possível usar origens que fornecem serviços de gRPC e que não são de gRPC. O CloudFront determina se a solicitação recebida é uma solicitação de gRPC ou uma solicitação HTTP/HTTPS com base no cabeçalho `Content-Type`. Se o cabeçalho `Content-Type` de uma solicitação tiver o valor de `application/grpc`, a solicitação será considerada uma solicitação de gRPC e o CloudFront enviará a solicitação por proxy para a origem.

**nota**  
Para que uma distribuição lide com solicitações gRPC, inclua HTTP/2 como uma das versões de HTTP compatíveis e permita métodos HTTP, como `POST`. O endpoint de origem do gRPC deve ser configurado para permitir HTTPS, pois o CloudFront só é compatível com conexões gRPC (baseadas em HTTPS). O gRPC só permite HTTPS de ponta a ponta. Se você estiver usando uma origem personalizada, verifique se suas configurações de [protocolo](DownloadDistValuesOrigin.md#DownloadDistValuesOriginProtocolPolicy) são compatíveis com HTTPS.

Para habilitar o suporte a gRPC para sua distribuição, conclua as seguintes etapas:

1. Atualize o comportamento do cache da distribuição para permitir métodos HTTP, como o método `POST`.

1. Depois de selecionar o método `POST`, marque a caixa de seleção gRPC exibida.

1. Especifique **HTTP/2** como uma das versões HTTP compatíveis. 

Para saber mais, consulte os seguintes tópicos:
+ [Permitir solicitações gRPC por HTTP/2](DownloadDistValuesCacheBehavior.md#enable-grpc-distribution)
+ [GrpcConfig](https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_GrpcConfig.html) na *Referência de API do Amazon CloudFront*

Como o gRPC é usado apenas para tráfego de API que não é armazenado em cache, as configurações de cache não afetarão as solicitações gRPC. É possível usar uma política de solicitação para a origem para adicionar cabeçalhos personalizados às solicitações gRPC enviadas à origem do gRPC. Você pode usar o AWS WAF com o CloudFront para gerenciar o acesso à sua distribuição de gRPC, controlar bots e proteger aplicações de gRPC contra explorações da web. O gRPC do CloudFront é compatível com o [CloudFront Functions](cloudfront-functions.md).

Além do status HTTPS, você receberá grpc-status junto com sua resposta de gRPC. Para obter uma lista de valores possíveis para grpc-status, consulte [Status codes and their use in gRPC](https://grpc.github.io/grpc/core/md_doc_statuscodes.html).

**Observações**  
O gRPC não é compatível com os seguintes recursos do CloudFront:  
[Respostas a erros personalizadas](GeneratingCustomErrorResponses.md)
 Não é possível usar [failover de origem](high_availability_origin_failover.md) com o gRPC, pois o gRPC usa o método `POST`. O CloudFront faz failover para a origem secundária somente quando o método HTTP da solicitação do visualizador for `GET`, `HEAD` ou `OPTIONS`.
O CloudFront envia por proxy as solicitações gRPC diretamente à origem e ignora o cache de borda regional (REC). Como o gRPC ignora o REC, ele não é compatível com o [Lambda@Edge](lambda-at-the-edge.md) ou o [Origin Shield](origin-shield.md).
O gRPC não comporta regras de inspeção do corpo de solicitações do AWS WAF. Se você habilitou essas regras na ACL da web para uma distribuição, qualquer solicitação que use gRPC ignorará as regras de inspeção do corpo das solicitações. Todas as outras regras do AWS WAF ainda serão aplicadas. Para obter mais informações, consulte [Habilitar o AWS WAF para distribuições](WAF-one-click.md).