Passer au contenu

Comment puis-je recevoir des notifications lorsque des modifications sont apportées à mes enregistrements de zone hébergée Route 53 ?

Lecture de 5 minute(s)
0

Je souhaite recevoir une réponse par e-mail avec une notification personnalisée lorsque je crée ou supprime des ensembles d'enregistrements de ressources d'Amazon Route 53.

Brève description

Utilisez un modèle d'événement personnalisé avec une règle Amazon EventBridge ou une règle Amazon CloudWatch Events qui est initiée lorsque vous effectuez l'appel d'API ChangeResourceRecordSets. Puis, acheminez la réponse vers une rubrique Amazon Simple Notification Service (Amazon SNS).

Remarque : Si vous n'avez pas de rubrique Amazon SNS associée à un abonnement par e-mail, créez une rubrique Amazon SNS et un abonnement à une rubrique SNS.

Résolution

Prérequis : Pour surveiller les événements Appel d'API AWS via CloudTrail, activez les journaux d’activité CloudTrail personnalisés dans les régions AWS où vous créez les règles. Pour enregistrer des événements avec l'une des valeurs de type de détail CloudTrail, vous devez activer la journalisation d'un journal d’activité. Vous pouvez créer un journal d’activité dans plusieurs régions ou uniquement dans la région us-east-1. Pour plus d’informations, consultez la section Utilisation des journaux d’activité CloudTrail.

Créer une règle EventBridge

Remarque : Route 53 est un service mondial AWS disponible uniquement dans la région AWS USA Est (Virginie du Nord). Vous devez créer la règle EventBridge dans la région USA Est (Virginie du Nord).

Procédez comme suit :

  1. Ouvrez la console EventBridge.
  2. Dans le volet de navigation, sélectionnez Règles.
  3. Sélectionnez Créer une règle.
  4. Dans les champs Name et Description, saisissez un nom et une description de la règle.
  5. Sélectionnez Activer la règle sur le bus d'événements sélectionné.
  6. Choisissez Règle avec un modèle d'événement.
  7. Sélectionnez Suivant.
  8. Sélectionnez Événements AWS ou Événements partenaires EventBridge.
  9. Sous Modèle d'événement, choisissez les options suivantes :
    Dans la liste déroulante Source de l’événement, sélectionnez Services AWS.
    Dans la liste déroulante Service AWS, choisissez Route 53.
    Dans la liste déroulante Type d’événement, choisissez Appel d’API AWS via CloudTrail.
  10. Choisissez Opération(s) spécifique(s).
  11. Dans Opération(s) spécifique(s), saisissez ChangeResourceRecordsets pour limiter les événements à correspondre uniquement pour la création, la suppression ou la mise à jour des ensembles d'enregistrements de ressources.
    Le modèle d'événement suivant apparaît :
{  
  "source": ["aws.route53"],  
  "detail-type": ["AWS API Call via CloudTrail"],  
  "detail": {  
    "eventSource": ["route53.amazonaws.com"],  
    "eventName": ["ChangeResourceRecordSets"]  
  }  
}
  1. Sélectionnez Suivant.

Associer la cible Amazon SNS à la règle EventBridge

Procédez comme suit :

  1. Ouvrez la console EventBridge.
  2. Dans la section Types de cibles, sélectionnez Service AWS.
  3. Dans la liste déroulante Sélectionner une cible, choisissez Rubrique SNS.
  4. Dans la liste déroulante Rubrique, choisissez votre rubrique Amazon SNS.

Configurer l'option Transformateur d'entrée pour personnaliser la notification SNS

Par défaut, EventBridge transmet l'intégralité de l'événement CloudTrail à la cible. Ensuite, la rubrique Amazon SNS envoie une notification sous forme de texte JSON non formaté.

Lorsque vous utilisez l'option Transformateur d'entrée sur la console EventBridge, vous pouvez spécifier les champs de l'événement entrant. Ensuite, le transformateur d'entrée transforme l'événement en un message plus lisible par l'utilisateur.

Dans les étapes suivantes, l'exemple de champ Chemin d’entrée inclut eventTime, hostedZone, nom d'utilisateur et eventID. Modifiez les champs en fonction de votre cas d'utilisation. EventBridge met automatiquement à jour les espaces réservés des champs dans le modèle d'entrée avec les champs que vous configurez dans le transformateur d'entrée.

Pour personnaliser une notification Amazon SNS, procédez comme suit :

  1. Ouvrez la console EventBridge.

  2. Développez la liste déroulante Paramètres supplémentaires.

  3. Dans la liste déroulante Configurer l’entrée cible, choisissez Transformateur d’entrée.

  4. Sélectionnez Configurer le transformateur d’entrée.

  5. Dans le champ Chemin d'entrée, saisissez le code suivant :

    {  
        "eventTime": "$.detail.eventTime",  
        "hostedZone": "$.detail.requestParameters.hostedZoneId",  
        "userName": "$.detail.userIdentity.sessionContext.sessionIssuer.userName",  
        "eventID": "$.detail.eventID"  
    }
  6. Dans le champ Modèle, saisissez le texte suivant :
    « À eventTime, un ou plusieurs enregistrements Route 53 dans la zone hébergée hostedZone ont été modifiés par l'utilisateur userName. Pour consulter l'événement directement dans votre historique des événements et examiner ces modifications, utilisez le lien suivant. Notez que l'événement peut prendre jusqu'à 15 minutes avant d’être disponible dans votre historique des événements : https://console.aws.amazon.com/cloudtrail/home?region=us-east-1#/events?EventId=eventID »
    Remarque : Remplacez userName par votre nom d'utilisateur.

  7. Sélectionnez Confirmer.

  8. (Facultatif) Ajoutez des identifications à la règle EventBridge, puis choisissez Suivant.

  9. Vérifiez la configuration des règles, puis choisissez Créer une règle.

Lorsque vous modifiez les ensembles de ressources Route 53, vous recevez à présent une notification similaire à la suivante :

« Le 16-08-2022T21:02:46Z, un ou plusieurs enregistrements Route 53 dans la zone hébergée ZB3A123456789 ont été modifiés par l'administrateur utilisateur. Pour consulter l'événement directement dans votre historique des événements et examiner ces modifications, utilisez le lien suivant. Notez que l'événement peut prendre jusqu'à 15 minutes avant d’être disponible dans votre historique des événements : https://console.aws.amazon.com/cloudtrail/home?region=us-east-1#/events?EventId=04d08662-537e-4424-97c2-8bc796943b75 »

Informations connexes

Comment puis-je créer un modèle d'événement personnalisé pour une règle EventBridge ?

Comment puis-je créer une règle EventBridge qui utilise le transformateur d'entrée pour rendre une notification Amazon SNS lisible par l’utilisateur ?

Tutoriel : Utiliser des transformateurs d'entrée pour transformer les événements dans EventBridge

Tutoriel : Créer une règle EventBridge qui réagit aux appels d'API AWS via CloudTrail