Renovação de certificado privado no AWS Certificate Manager
Os certificados do ACM que foram assinados por uma CA privada da CA privada da AWS são qualificados para a renovação gerenciada. Ao contrário dos certificados do ACM publicamente confiáveis, um certificado para uma PKI privada não requer validação. A confiança é estabelecida quando um administrador instala o certificado CA-raiz apropriado nos armazenamentos de confiança do cliente.
nota
Somente certificados obtidos usando o console do ACM ou a ação RequestCertificate da API do ACM são elegíveis para renovação gerenciada. Certificados emitidos diretamente da CA privada da AWS usando a ação IssueCertificate da API do CA privada da AWS não são gerenciados pelo ACM.
Quando prazo de validade de um certificado gerenciado expira em 60 dias, o ACM tenta renová-lo automaticamente. Isso inclui certificados que foram exportados e instalados manualmente (por exemplo, em um data center on-premises). Os clientes também podem forçar a renovação a qualquer momento usando a ação RenewCertificate da API do ACM. Para obter um exemplo de implementação Java de renovação forçada, consulte Renovação de um certificado.
Após a renovação, a implantação de um certificado em serviço ocorre de uma das seguintes maneiras:
-
Se o certificado é associado a um serviço integrado do ACM, o novo certificado substitui o antigo sem ação adicional do cliente.
-
Se o certificado não é associado a um serviço integrado do ACM, a ação do cliente é necessária para exportar e instalar o certificado renovado. Você pode executar essas ações manualmente ou com a ajuda do AWS Health, Amazon EventBridge e AWS Lambda, conforme mostrado a seguir. Para obter mais informações, consulte . Automatizar a exportação de certificados renovados
Automatizar a exportação de certificados renovados
O procedimento a seguir fornece um exemplo de solução para automatizar a exportação de seus certificados PKI privados quando o ACM os renova. Este exemplo apenas exporta um certificado e sua chave privada para fora do ACM. Após a exportação, o certificado ainda deve ser instalado em seu dispositivo de destino.
Como exportar um certificado privado usando o console
-
Seguindo os procedimentos descritos no Guia do desenvolvedor do AWS Lambda, crie e configure uma função do Lambda que chama API de exportação do ACM.
-
Crie uma função de execução do Lambda para sua função e adicione a política de confiança a seguir a ela. A política concede permissão ao código em sua função para recuperar o certificado renovado e a chave privada chamando a ação ExportCertificate da API do ACM.
-
Crie uma regra no Amazon EventBridge para escutar os eventos de integridade do ACM e chamar a função do Lambda ao detectar um desses eventos. O ACM grava em um evento AWS Health toda vez que tenta renovar um certificado. Para mais informações sobre esses avisos, consulte Verificar o status usando o Personal Health Dashboard (PHD).
Configure a regra adicionando o padrão de evento a seguir.
{ "source":[ "aws.health" ], "detail-type":[ "AWS Health Event" ], "detail":{ "service":[ "ACM" ], "eventTypeCategory":[ "scheduledChange" ], "eventTypeCode":[ "AWS_ACM_RENEWAL_STATE_CHANGE" ] }, "resources":[ "arn:aws:acm:region:account:certificate/certificate_ID" ] } -
Conclua o processo de renovação instalando manualmente o certificado no sistema de destino.
Testar a renovação gerenciada de certificados PKI privados
Você pode usar a API ou a AWS CLI do ACM para testar manualmente a configuração do fluxo de trabalho da renovação gerenciada do ACM. Fazendo isso, você pode confirmar que os certificados serão renovados automaticamente pelo ACM antes da expiração da validade.
nota
É possível testar somente a renovação de certificados emitidos e exportados pela CA privada da AWS.
Quando você usa as ações de API ou os comandos da CLI descritos abaixo, o ACM tenta renovar o certificado. Se a renovação for bem-sucedida, o ACM atualizará os metadados do certificado exibidos no console de gerenciamento ou na saída da API. Se o certificado está associado a um serviço integrado do ACM, o novo certificado é implantado e um evento de renovação é gerado no Amazon CloudWatch Events. Se a renovação falhar, o ACM retorna um erro e sugere uma ação corretiva. (Você pode visualizar essas informações usando o comando describe-certificate.) Se o certificado não é implantado por meio de um serviço integrado, você ainda precisa exportá-lo e instalá-lo manualmente em seu recurso.
Importante
Para renovar os certificados da CA privada da AWS com o ACM, você deve primeiro conceder as permissões de entidade principal do serviço do ACM para fazer isso. Para obter mais informações, consulte Atribuindo permissões de renovação de certificado ao ACM.
Para testar manualmente a renovação de certificado (AWS CLI)
-
Use o comando renew-certificate para renovar um certificado privado exportado.
aws acm renew-certificate \ --certificate-arn arn:aws:acm:region:account:certificate/certificate_ID -
Depois, use o comando describe-certificate para confirmar que os detalhes da renovação do certificado foram atualizados.
aws acm describe-certificate \ --certificate-arn arn:aws:acm:region:account:certificate/certificate_ID
Para testar manualmente a renovação de certificados (API do ACM)
-
Envie uma solicitação RenewCertificate, especificando o ARN do certificado privado a ser renovado. Depois, use a operação DescribeCertificate para confirmar que os detalhes da renovação do certificado foram atualizados.