Certificados SSL (TLS)

O Media CDN tem suporte de primeira classe para veicular o tráfego criptografado por TLS (HTTPS) do seu próprio nome de domínio, bem como suporte para solicitações assinadas. O Media CDN é exibido a partir do seu próprio domínio (domínio Bring-Your-Own ou BYO) e não precisa ser exibido a partir de um domínio hospedado pelo Google.

  • Não há cobranças extras associadas à veiculação do tráfego SSL (TLS) ou à obtenção de certificados gerenciados pelo Google. A proteção do tráfego do usuário final não deve ser premium.
  • O Media CDN é compatível com certificados gerenciados pelo Google, permitindo que o Google gerencie a rotação, as chaves e a distribuição segura para milhares de nós de borda, bem como certificados autogerenciados (upload).
  • Cada serviço é compatível com até cinco certificados SSL.
  • Cada certificado gerenciado pode ter até 100 nomes (nomes alternativos do assunto).

Como prática de segurança recomendada, disponibilize seu serviço de armazenamento em cache de borda em nomes de host dedicados (subdomínios) e use certificados gerenciados separados para seus domínios de mídia.

Criar e emitir certificados

Para validar, emitir e anexar um certificado SSL (TLS) gerenciado a um serviço CDN de mídia, consulte Como configurar certificados SSL.

Tipos de certificado

O Media CDN é compatível com dois tipos de certificados:

  • Certificados gerenciados, que o Google pode provisionar em seu nome para nomes de domínio que você possui. Você não precisa de chaves seguras, e os certificados são renovados automaticamente.
  • Certificados autogerenciados, que você envia diretamente para o Gerenciador de certificados. Você é responsável por fazer upload de um certificado válido e publicamente confiável, bem como por substituir o certificado antes que ele expire.

Como os certificados gerenciados podem ser autorizados e emitidos antes de direcionar o tráfego no Media CDN, é possível provisionar certificados antes de cortar o tráfego de produção e evitar a inatividade.

Em alguns casos, como quando você exige a fixação de chaves em aplicativos para dispositivos móveis ou suporte a dispositivos legados com repositórios de confiança desatualizados, pode ser necessário usar certificados autogerenciados. Também é possível usar certificados gerenciados e autogerenciados no mesmo serviço se você tiver nomes de domínio (hosts) específicos que exijam certificados autogerenciados.

Autorização da emissão de certificados

Se você quiser que seus certificados gerenciados pelo Google estejam prontos para uso antes que o ambiente de produção esteja totalmente configurado, como antes de iniciar uma migração de outro fornecedor para o Google Cloud, é possível provisioná-los com autorizações de DNS. Neste cenário, o Gerenciador de certificados usa a validação baseada em DNS. Cada autorização de DNS armazena informações sobre o registro DNS que você precisa configurar e abrange um único domínio e o respectivo caractere curinga, por exemplo, myorg.example.com e *.myorg.example.com.

Ao criar um certificado gerenciado pelo Google, é possível especificar uma ou mais autorizações de DNS a serem usadas para provisionamento e renovação desse certificado. Se você estiver usando vários certificados para um único domínio, poderá especificar a mesma autorização de DNS em cada um deles. Suas autorizações de DNS precisam abranger todos os domínios especificados no certificado. Caso contrário, a criação e as renovações do certificado falharão.

É possível gerenciar os certificados de cada projeto separadamente usando a autorização de DNS por projeto (Pré-lançamento). Isso significa que o Gerenciador de certificados pode emitir e gerenciar certificados para cada projeto de maneira independente no Google Cloud. As autorizações e os certificados de DNS que você usa em um projeto são autônomos e não interagem com outros em outros projetos.

Para configurar uma autorização de DNS, é preciso adicionar à configuração de DNS um registro CNAME para um subdomínio de validação aninhado no domínio de destino. Esse registro CNAME aponta para um domínio especial do Google Cloud que o Gerenciador de certificados usa para verificar a propriedade do domínio. O Gerenciador de certificados retorna o registro CNAME quando você cria uma autorização de DNS para o domínio de destino.

O registro CNAME também concede ao Gerenciador de certificados as permissões para provisionamento e renovação de certificados para esse domínio no projeto de destino do Google Cloud. Para revogar essas permissões, remova o registro CNAME da sua configuração de DNS.

Para ativar a autorização de DNS por projeto, selecione PER_PROJECT_RECORD durante o processo de criação da autorização de DNS. Após a seleção, você recebe um registro CNAME exclusivo que inclui subdomínio e destino e é personalizado para o projeto específico.

Adicione o registro CNAME à zona de DNS do domínio relevante.

Vários domínios por certificado

Os certificados emitidos pelo Gerenciador de certificados permitem especificar vários nomes de domínio (nomes de host) no mesmo certificado que os nomes alternativos do assunto.

Para adicionar vários domínios a um certificado, basta especificar uma lista de domínios ao criá-lo, bem como todas as autorizações correspondentes necessárias.

Cada autorização abrange apenas o domínio exato (por exemplo, video.example.com) e o caractere curinga (*.example.com). Ela não abrange subdomínios explícitos. Se você quiser um certificado para eu.video.example.com, por exemplo, configure outra autorização de DNS para o domínio eu.video.example.com.

Os exemplos a seguir mostram como anexar uma autorização para video.example.com e eu.video.example.com:

gcloud

Use o comando gcloud certificate-manager certificates:

gcloud certificate-manager certificates create video-example-com \
    --domains="video.example.com,eu.video.example.com" \
    --dns-authorizations="video-example-com-auth,eu-video-example-com-auth" \
    --scope=EDGE_CACHE

Isso cria um certificado com a autorização de DNS no estado AUTHORIZING e o certificado no estado PROVISIONING:

managed:
authorizationAttemptInfo:
- domain: video.example.com
  state: AUTHORIZED
dnsAuthorizations:
- projects/123456/locations/global/dnsAuthorizations/video-example-com-auth
- projects/123456/locations/global/dnsAuthorizations/eu-video-example-com-auth
domains:
- video.example.com
state: PROVISIONING
scope: EDGE_CACHE
subjectAlternativeNames:
- video.example.com

Os domínios não podem compartilhar uma autorização de DNS. É preciso especificar vários domínios e autorizações. O Gerenciador de certificados determina quais domínios exigem quais autorizações.

Para saber como os certificados são emitidos e ativados, consulte Configurar certificados SSL (TLS).

Renovação de certificado

Os certificados gerenciados são renovados automaticamente pelo Gerenciador de certificados. Certificados renovados são enviados automaticamente para a borda global do Google para cada serviço ativo configurado.

  • Os certificados do EDGE_CACHE têm um período de validade curto (30 dias) para melhorar a segurança e a conformidade, em comparação com o padrão atual do setor de 90 dias (com um intervalo de renovação de 60 dias).
  • A renovação do certificado geralmente é iniciada quando faltam 10 dias para o vencimento do certificado.
  • Você não precisa fazer nada quando um certificado é renovado. O novo certificado substitui automaticamente o atual antes da data de validade, sem impacto no seu tráfego ativo.

Como o pipeline de emissão revalida o controle de domínio antes da renovação, não exclua os registros DNS configurados para autorização de DNS. A exclusão do registro usado para demonstrar a validação de controle de domínio (DCV, na sigla em inglês) resulta na impossibilidade de renovar os certificados e impede que os clientes se conectem por HTTPS (TLS) quando o certificado expira.

Registros CAA e raízes

Para verificar a compatibilidade com dispositivos clientes, incluindo smart TVs, smartphones e caixas de streaming mais antigas, confira o conjunto completo de CAs raiz que o Google usa em pki.goog.

Para permitir que o Gerenciador de certificados e o Media CDN emita certificados para um domínio com registros CAA atuais, adicione o registro CAA pki.goog:

DOMAIN_NAME. CAA 0 issue "pki.goog"

Os domínios que não têm registros CAA não precisam adicionar esse registro, mas o recomendamos como prática recomendada.

Leia mais sobre os registros CAA.

Limites de certificados

É possível emitir até 1.000 certificados gerenciados e 1.000 autorizações de DNS por projeto. Para outros limites e cotas relacionados, consulte a documentação Cotas e limites .

Versões de TLS compatíveis

O Media CDN é compatível com as seguintes versões do TLS:

Versão do TLS Compatível Criptografias incluídas
SSL 3,0 No N/A (incompatível)
TLS 1.0 No N/A (incompatível)
TLS 1.1 No N/A (incompatível)
TLS 1.2 TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA, TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256, TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA, TLS_ECDHE_RSA_WITH_AES_256_GCM_BC_PORS_SHA20
TLS 1.3 TLS_AES_128_GCM_SHA256, TLS_AES_256_GCM_SHA384, TLS_CHACHA20_POLY1305_SHA256

Além disso:

  • Os dispositivos sem suporte a versões modernas do TLS (como o TLS 1.3) negociam automaticamente uma versão do TLS com suporte.
  • O TLS 1.2 é a versão de TLS mínima compatível com o Media CDN.
  • O Media CDN não oferece suporte ao anexo de políticas de SSL a um serviço.

Resolver problemas de emissão de certificados

Se você encontrar erros na emissão de certificados, veja como solucionar problemas na emissão de certificados.

A seguir