Création d'une règle CloudWatch Events qui se déclenche lors d'un appel d'API AWS à l'aide de AWS CloudTrail - Amazon CloudWatch Events

Création d'une règle CloudWatch Events qui se déclenche lors d'un appel d'API AWS à l'aide de AWS CloudTrail

Note

Amazon EventBridge est la meilleure façon de gérer vos événements. CloudWatch Events et EventBridge représentent les mêmes services et API sous-jacents, mais EventBridge offre davantage de fonctionnalités. Les modifications que vous apportez dans CloudWatch ou EventBridge apparaîtront dans chaque console. Pour plus d'informations, consultez la section Amazon EventBridge.

Pour créer une règle qui se déclenche sur une action exécutée par un service AWS qui n'émet pas d'événements, vous pouvez baser la règle sur les appels d'API effectués par ce service. Les appels d'API sont enregistrés par AWS CloudTrail. Pour plus d'informations sur les appels d'API que vous pouvez utiliser comme déclencheurs pour les règles, consultez Services pris en charge par l'historique des événements CloudTrail.

Les règles dans CloudWatch Events fonctionnent uniquement dans la région où elles ont été créées. Si vous configurez CloudTrail pour suivre les appels d'API dans plusieurs régions, et que vous souhaitez qu'une règle basée sur CloudTrail se déclenche dans chacune de ces régions, vous devez créer une règle distincte dans chaque région que vous souhaitez suivre.

Tous les événements fournis via CloudTrail ont AWS API Call via CloudTrail comme valeur pour detail-type.

Note

Dans CloudWatch Events, il est possible de créer des règles qui conduisent à des boucles infinies, dans lesquelles une règle est exécutée de manière répétée. Par exemple, une règle peut détecter que les listes de contrôle d'accès (ACL) ont été modifiées sur un compartiment S3 et lancer un logiciel pour les modifier afin qu'elles aient l'état souhaité. Si la règle n'est pas correctement écrite, la modification suivante des listes de contrôle d'accès (ACL) déclenche à nouveau la règle, créant ainsi une boucle infinie.

Pour éviter ce problème, écrivez les règles de sorte que les actions déclenchées ne relancent pas la même règle. Par exemple, votre règle pourrait ne s'exécuter que si les listes ACL s'avèrent être dans un état incorrect plutôt qu'après une modification.

Une boucle infinie peut rapidement entraîner des coûts plus importants que prévu. Nous vous recommandons d'utiliser les budgets, qui vous avertissent lorsque les frais dépassent votre limite spécifiée. Pour plus d'informations, consultez Gestion des coûts avec les budgets.

Pour créer une règle qui se déclenche sur un appel d'API via CloudTrail :

  1. Ouvrez la console CloudWatch à l'adresse https://console.aws.amazon.com/cloudwatch/.

  2. Dans le volet de navigation, choisissez Events, Create rule.

  3. Dans Event source, effectuez l'une des opérations suivantes :

    1. Choisissez Event Pattern, Build event pattern to match events by service.

    2. Pour Nom du service, choisissez le service qui utilise les opérations d'API à utiliser comme déclencheur.

    3. Pour Event Type (Type d'événement), sélectionnez AWS API Call via CloudTrail (Appel d'API AWS via CloudTrail).

    4. Pour déclencher votre règle lorsque toute opération d'API pour ce service est appelée, choisissez Any operation (Toute opération). Pour déclencher votre règle uniquement lorsque certaines opérations d'API sont appelées, choisissez Specific operation(s) (Opérations spécifiques), tapez le nom de l'opération dans la zone suivante, puis appuyez sur ENTRÉE. Pour ajouter d'autres opérations, choisissez +.

  4. Pour Cibles, sélectionnez Add Target (Ajouter une cible) et choisissez le service AWS qui doit agir lorsqu'un événement du type sélectionné est détecté.

  5. Dans les autres champs de cette section, entrez des informations spécifiques à ce type de cible, le cas échéant.

  6. Pour de nombreux types de cibles, CloudWatch Events a besoin d'autorisations pour envoyer des événements à la cible. Dans ce cas, CloudWatch Events peut créer le rôle IAM nécessaire à l'exécution de votre événement :

    • Pour créer un rôle IAM automatiquement, choisissez Create a new role for this specific resource.

    • Pour utiliser un rôle IAM que vous avez créé auparavant, choisissez Utiliser le rôle existant.

  7. Le cas échéant, répétez les étapes 4 à 6 afin d'ajouter une autre cible pour cette règle.

  8. Sélectionnez Configure details. Dans Rule definition, saisissez un nom et une description pour la règle.

    Le nom de la règle doit être unique au sein de cette région.

  9. Choisissez Create rule.