Saltar al contenido

¿Cómo recibo notificaciones cuando se producen cambios en mis registros de zonas alojadas de Route 53?

5 minutos de lectura
0

Quiero recibir una respuesta por correo electrónico con una notificación personalizada cuando al crear o eliminar conjuntos de registros de recursos de Amazon Route 53.

Descripción corta

Utilice un patrón de eventos personalizado con una regla de Amazon EventBridge o Eventos de Amazon CloudWatch que se inicie al realizar la llamada a la API ChangeResourceRecordSets. A continuación, dirija la respuesta a un tema de Amazon Simple Notification Service (Amazon SNS).

Nota: Si no tiene un tema de Amazon SNS con una suscripción de correo electrónico, cree un tema de Amazon SNS y una suscripción a un tema de SNS.

Resolución

Requisito previo: Para supervisar la llamada a la API de AWS mediante eventos de CloudTrail, active las pistas personalizadas de CloudTrail en las regiones de AWS en las que cree las reglas. Para registrar eventos con uno de los valores de tipo detalle de CloudTrail, debe activar el registro de una pista. Puede crear una pista en varias regiones o solo en la región us-east-1. Para obtener más información, consulte Uso de pistas de CloudTrail.

Creación de una regla de EventBridge

Nota: Route 53 es un servicio global de AWS que solo está disponible en la región de AWS Este de EE. UU. (norte de Virginia). Debe crear la regla de EventBridge en la región Este de EE. UU. (norte de Virginia).

Siga estos pasos:

  1. Abra la consola de EventBridge.
  2. En el panel de navegación, seleccione Reglas.
  3. Seleccione Crear regla.
  4. En los campos Nombre y Descripción, introduzca un nombre y una descripción para la regla.
  5. Seleccione Habilitar la regla en el bus de eventos seleccionado.
  6. Elija Regla con un patrón de eventos.
  7. Seleccione Siguiente.
  8. Seleccione Eventos de AWS o eventos de socios de EventBridge.
  9. En Patrón de eventos, elija las siguientes opciones:
    En la lista desplegable Origen del evento, elija Servicios de AWS.
    En la lista desplegable Servicio de AWS, seleccione Route 53.
    En la lista desplegable Tipo de evento, elija Llamada a la API de AWS a través de CloudTrail.
  10. Seleccione Operaciones específicas.
  11. En Operaciones específicas, introduzca ChangeResourceRecordSets para limitar los eventos de manera que coincidan solo para crear, eliminar o actualizar conjuntos de registros de recursos.
    Aparece el siguiente patrón de eventos:
{  
  "source": ["aws.route53"],  
  "detail-type": ["AWS API Call via CloudTrail"],  
  "detail": {  
    "eventSource": ["route53.amazonaws.com"],  
    "eventName": ["ChangeResourceRecordSets"]  
  }  
}
  1. Seleccione Siguiente.

Asociación del objetivo de Amazon SNS a la regla EventBridge

Siga estos pasos:

  1. Abra la consola de EventBridge.
  2. En la sección Tipos de destinos, seleccione Servicio de AWS.
  3. En la lista desplegable Seleccione un destino, elija el tema SNS.
  4. En la lista desplegable Tema, elija el tema de Amazon SNS.

Configuración de la opción de transformador de entrada para personalizar la notificación SNS

De forma predeterminada, EventBridge reenvía todo el evento de CloudTrail al objetivo. A continuación, el tema de Amazon SNS entrega una notificación como texto JSON sin formato.

Al utilizar la opción Transformador de entrada en la consola de EventBridge, puede especificar los campos del evento entrante. Luego, el transformador de entrada transforma el evento en un mensaje más legible para las personas. 

En los pasos siguientes, el campo Ruta de entrada incluye eventTime, hostedZone, username y eventID. Cambie los campos para alinearlos con su caso de uso. EventBridge actualiza automáticamente los marcadores de posición de Plantilla de entrada con los campos que configura en el transformador de entrada.

Para personalizar una notificación de Amazon SNS, siga estos pasos:

  1. Abra la consola de EventBridge.

  2. Amplíe la lista desplegable de Ajustes adicionales.

  3. En la lista desplegable Configurar entrada de destino, elija Transformador de entrada.

  4. Seleccione Configurar transformador de entrada.

  5. En el campo Ruta de entrada, introduzca el siguiente código:

    {  
        "eventTime": "$.detail.eventTime",  
        "hostedZone": "$.detail.requestParameters.hostedZoneId",  
        "userName": "$.detail.userIdentity.sessionContext.sessionIssuer.userName",  
        "eventID": "$.detail.eventID"  
    }
  6. En el campo Plantilla, pegue el texto siguiente:
    «En EventTime, el usuario UserName ha modificado uno o más registros de Route 53 dentro de la zona alojada HostedZone. Para ver el evento directamente en el historial de eventos y revisar estos cambios, use el siguiente enlace. Tenga en cuenta que el evento puede tardar hasta 15 minutos en estar disponible en el historial de eventos: https://console.aws.amazon.com/cloudtrail/home?region=us-east-1#/events?EventId=eventID»
    Nota: Sustituya userName por su nombre de usuario.

  7. Seleccione Confirmar.

  8. (Opcional) Agregue etiquetas a la regla de EventBridge y, a continuación, elija Siguiente.

  9. Revise la configuración de la regla y, a continuación, elija Crear regla.

Al cambiar los conjuntos de recursos de Route 53, ahora recibe una notificación similar a la siguiente:

«A las 2022-08-16T21:02:46Z, el usuario administrador modificó uno o más registros de Route 53 de la zona alojada ZB3A123456789. Para ver el evento directamente en el historial de eventos y revisar estos cambios, use el siguiente enlace. Tenga en cuenta que el evento puede tardar hasta 15 minutos en estar disponible en el historial de eventos: https://console.aws.amazon.com/cloudtrail/home?region=us-east-1#/events?EventId=04d08662-537e-4424-97c2-8bc796943b75»

Información relacionada

¿Cómo puedo crear un patrón de eventos personalizado para una regla de EventBridge?

¿Cómo puedo crear una regla de EventBridge que utilice el transformador de entrada de modo que las notificaciones de Amazon SNS sean legibles para las personas?

Tutorial: uso de transformadores de entrada para transformar eventos en EventBridge

Tutorial: creación de una regla de EventBridge que reaccione a las llamadas a la API de AWS a través de CloudTrail