Quero usar o AWS Certificate Manager (ACM) para solucionar erros "InvalidViewerCertificate" que recebo quando crio ou atualizo minha distribuição do Amazon CloudFront.
Resolução
Confirmar se o certificado atende a todos os requisitos
Se você receber a seguinte mensagem de erro:
"The specified SSL certificate doesn't exist, isn't in us-east-1 region, isn't valid, or doesn't include a valid certificate chain."
Para resolver esse problema, execute as seguintes ações:
Além disso, use as seguintes configurações para o certificado:
- Importe o certificado na região Leste dos EUA (Norte da Virgínia).
- Use uma chave de certificado de 4096 bits ou menor.
- Não proteja a senha.
- Codifique o certificado por PEM.
Usar um certificado que inclua o CNAME
Se você receber a seguinte mensagem de erro:
"To add an alternate domain name (CNAME) to a CloudFront distribution, you must attach a trusted certificate that validates your authorization to use the domain name."
Esse erro ocorre quando o Nome Alternativo do Assunto (SAN) no certificado não inclui o CNAME que você especificou na distribuição do CloudFront.
Para resolver esse problema, solicite um certificado público. Também é possível entrar em contato com sua autoridade de certificação (CA) para obter um certificado atualizado que inclua os CNAMEs na distribuição.
Usar cinco ou menos certificados
Se você receber a seguinte mensagem de erro:
"The certificate that is attached to your distribution has too many certificates in the certificate chain."
Esse erro ocorre quando você excede o número máximo de cinco certificados na cadeia. Para resolver esse problema, use uma nova cadeia de certificados com cinco ou menos certificados.
Se sua CA atual não oferecer suporte a cinco ou menos certificados, solicite um certificado público.
Obter uma cadeia de certificados atualizada
Você recebe uma das seguintes mensagens de erro:
"The certificate that is attached to your distribution has one or more expired certificates in the certificate chain. Make sure that each certificate in the chain is valid for the current date by reviewing the Not Valid After field."
-ou-
"The certificate that is attached to your distribution has one or more certificates in the certificate chain that aren't valid yet. Make sure that each certificate in the chain is valid for the current date by reviewing the Not Valid Before field."
Se seu certificado expirou, você deverá obter uma cadeia de certificados atualizada da sua CA.
Conclua as etapas a seguir:
- Baixe os arquivos de cadeia corretos da sua CA.
- Reimporte o certificado e a cadeia para o ACM ou para o AWS Identity and Access Management (AWS IAM).
- Tente novamente sua solicitação para criar ou atualizar sua distribuição do CloudFront.
Se o certificado ainda não for válido, não será possível importá-lo. Marque o campo do certificado "Not Valid Before" e tente novamente sua solicitação.
Se não for possível repetir sua solicitação, solicite um certificado público.
Usar uma CA confiável
Se você receber a seguinte mensagem de erro:
"The certificate that is attached to your distribution was not issued by a trusted Certificate Authority."
Para resolver esse problema, obtenha um certificado de uma CA confiável para o CloudFront que permita usar um registro CNAME. Se sua CA atual não oferecer suporte a esse cenário, solicite um certificado público.
Observação: é possível usar um certificado autoassinado para validar somente um registro CNAME existente, não um novo registro CNAME.
Verificar a formatação no campo SAN
Se você receber a seguinte mensagem de erro:
"The certificate that is attached to your distribution has a value in the SAN field that is not correctly formatted."
O CloudFront exige que cada entrada seja um nome DNS que contenha um nome de domínio totalmente qualificado (FQDN) ou um endereço IP. As entradas curinga são válidas, mas não é possível adicionar um CNAME que esteja em um nível superior ou inferior ao curinga.
Se sua CA atual não oferecer suporte a esse cenário, solicite um certificado público.
Adicionar o CNAME às chamadas de API
Você recebe a seguinte mensagem de erro:
"The certificate that you specified doesn't cover the alternate domain name (CNAME) that you're trying to add."
Esse erro ocorre quando o CNAME que você está tentando associar à sua distribuição não está incluído no SAN do certificado. Para resolver esse problema, você deve fornecer o CNAME nas chamadas de API CreateDistribution ou UpdateDistribution.
Tentar novamente as chamadas de API
Se você receber a seguinte mensagem de erro:
"CloudFront encountered an internal error. Please try again."
Se você receber a mensagem de erro anterior ao fazer as chamadas de API CreateDistribution ou UpdateDistribution, tente fazer as chamadas novamente. Se o problema persistir por um longo período, verifique o AWS Health Dashboard para ver os problemas relacionados.
Informações relacionadas
Por que não posso escolher um certificado SSL/TLS personalizado para minha distribuição do CloudFront?