Ir para o conteúdo

Como faço para receber notificações quando ocorrem alterações nos meus registros de zona hospedada do Route 53?

5 minuto de leitura
0

Quero receber uma resposta por e-mail com uma notificação personalizada ao criar ou excluir conjuntos de registros de recursos do Amazon Route 53.

Breve descrição

Use um padrão de evento personalizado com uma regra do Amazon EventBridge ou uma regra do Amazon CloudWatch Events que é iniciada quando você faz a chamada da API ChangeResourceRecordSets. Em seguida, encaminhe a resposta para um tópico do Amazon Simple Notification Service (Amazon SNS).

Observação: se você não tiver um tópico do Amazon SNS com uma assinatura de e-mail, crie um tópico do Amazon SNS e uma assinatura para um tópico do SNS.

Resolução

Pré-requisito: para monitorar a chamada de API da AWS por meio de eventos do CloudTrail, ative trilhas personalizadas do CloudTrail nas regiões da AWS onde você cria as regras. Para registrar eventos com um dos valores do tipo de detalhe do CloudTrail, você deve ativar o registro de uma trilha. É possível criar uma trilha em várias regiões ou somente na região us-east-1. Para mais informações, consulte Trabalhar com trilhas do CloudTrail.

Criar uma regra do EventBridge

Observação: o Route 53 é um serviço global da AWS que está disponível somente na região Leste dos EUA (Norte da Virgínia) da AWS. Você deve criar a regra EventBridge na região Leste dos EUA (Norte da Virgínia).

Conclua as etapas a seguir:

  1. Abra o console do EventBridge.
  2. No painel de navegação, escolha Regras.
  3. Selecione Criar regra.
  4. Nos campos Nome e Descrição, insira um nome e uma descrição para a regra.
  5. Selecione Ativar a regra no eventbus selecionado.
  6. Escolha Regra com um padrão de eventos.
  7. Escolha Avançar.
  8. Escolha Eventos da AWS ou de parceiros do EventBridge.
  9. Em Padrão de evento escolha as seguintes opções:
    Na lista suspensa Origem do evento, escolha Serviços da AWS.
    Na lista suspensa Serviço da AWS, escolha Route 53.
    Na lista suspensa Tipo de evento, escolha Chamada de API da AWS via CloudTrail.
  10. Escolha Operações específicas.
  11. Em Operações específicas, insira ChangeResourceRecordSets para limitar a correspondência de eventos somente para criar, excluir ou atualizar conjuntos de registros de recursos.
    O seguinte padrão de evento é exibido:
{  
  "source": ["aws.route53"],  
  "detail-type": ["AWS API Call via CloudTrail"],  
  "detail": {  
    "eventSource": ["route53.amazonaws.com"],  
    "eventName": ["ChangeResourceRecordSets"]  
  }  
}
  1. Escolha Avançar.

Associar o destino do Amazon SNS à regra do EventBridge

Conclua as etapas a seguir:

  1. Abra o console do EventBridge.
  2. Na seção Tipos de destino, escolha Serviço da AWS.
  3. Na lista suspensa Selecionar destino, escolha Tópico do SNS.
  4. Na lista suspensa Tópico, escolha seu tópico do Amazon SNS.

Configurar a opção de transformador de entrada para personalizar a notificação do SNS

Por padrão, o EventBridge encaminha todo o evento do CloudTrail para o destino. Em seguida, o tópico do Amazon SNS entrega uma notificação como texto JSON não formatado.

Ao usar a opção Transformador de entrada no console do EventBridge, é possível especificar os campos no evento de entrada. Em seguida, o Transformador de entrada transforma o evento em uma mensagem mais legível por humanos.

Nas etapas a seguir, o exemplo de campo Caminho de entrada inclui eventTime, hostedZone, username e eventID. Altere os campos para alinhá-los ao seu caso de uso. O EventBridge atualiza automaticamente os espaços reservados de campo no Modelo de entrada com os campos configurados no Transformador de entrada.

Para personalizar uma notificação do Amazon SNS, conclua as etapas a seguir:

  1. Abra o console do EventBridge.

  2. Expanda a lista suspensa Configurações adicionais.

  3. Na lista suspensa Configurar entrada de destino, escolha Transformador de entrada.

  4. Escolha Configurar transformador de entrada.

  5. No campo Caminho de entrada, insira o seguinte código:

    {  
        "eventTime": "$.detail.eventTime",  
        "hostedZone": "$.detail.requestParameters.hostedZoneId",  
        "userName": "$.detail.userIdentity.sessionContext.sessionIssuer.userName",  
        "eventID": "$.detail.eventID"  
    }
  6. No campo Modelo, insira o seguinte texto:
    “Em eventTime, um ou mais registros do Route 53 na zona hospedada HostedZone foram modificados pelo usuário userName. Para ver o evento diretamente em seu Histórico de eventos e revisar essas alterações, clique no link a seguir. Observe que o evento pode levar até 15 minutos para ficar disponível em seu Histórico de eventos: https://console.aws.amazon.com/cloudtrail/home?region=us-east-1#/events?EventId=eventID”
    Observação: substitua userName pelo seu nome de usuário.

  7. Selecione Confirmar.

  8. (Opcional) Adicione tags à regra do EventBridge e escolha Avançar.

  9. Revise a configuração da regra e escolha Criar regra.

Ao alterar os conjuntos de recursos do Route 53, agora você recebe uma notificação semelhante à seguinte:

“Em 2022-08-16T 21:02:46 Z, um ou mais registros do Route 53 na zona hospedada ZB3A123456789 foram modificados pelo usuário Admin. Para ver o evento diretamente em seu Histórico de eventos e revisar essas alterações, clique no link a seguir. Observe que o evento pode levar até 15 minutos para ficar disponível em seu Histórico de eventos: https://console.aws.amazon.com/cloudtrail/home?region=us-east-1#/events?EventId=04d08662-537e-4424-97c2-8bc796943b75”

Informações relacionadas

Como criar um padrão de evento personalizado para uma regra do EventBridge?

Como criar uma regra do EventBridge que use o transformador de entrada para fazer com que uma notificação do Amazon SNS seja legível por humanos?

Tutorial: Use transformadores de entrada para transformar eventos no EventBridge

Tutorial: Crie uma regra do EventBridge que reaja às chamadas de API da AWS via CloudTrail