Notifier les utilisateurs en cas de changements d'alertes - Amazon CloudWatch

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Notifier les utilisateurs en cas de changements d'alertes

Cette section explique comment vous pouvez utiliser les notifications AWS utilisateur ou Amazon Simple Notification Service pour informer les utilisateurs des modifications apportées aux alarmes.

Configuration des notifications AWS utilisateur

Vous pouvez utiliser les notifications AWS utilisateur pour configurer des canaux de diffusion afin d'être informé des changements CloudWatch d'état d'alarme et des événements de modification de configuration. Vous recevez une notification lorsqu'un événement correspond à une règle que vous avez spécifiée. Vous pouvez recevoir des notifications relatives à des événements via plusieurs canaux, notamment les notifications de discussion AWS Chatbot ou les notifications push AWS Console Mobile Application. Vous pouvez également consulter les notifications dans le Centre de notifications de la console. Notifications utilisateur prend en charge l’agrégation, ce qui peut réduire le nombre de notifications que vous recevez lors d’événements spécifiques.

Les configurations de notification que vous créez avec les notifications AWS utilisateur ne sont pas prises en compte dans la limite du nombre d'actions que vous pouvez configurer par état d'alarme cible. Lorsque les notifications AWS utilisateur correspondent aux événements envoyés à Amazon EventBridge, celui-ci envoie des notifications pour toutes les alarmes de votre compte et des régions sélectionnées, sauf si vous spécifiez un filtre avancé pour autoriser ou refuser des alarmes ou des modèles spécifiques.

L'exemple suivant de filtre avancé correspond à un changement d'état d'alerte de OK à ALARM pour l'alerte nommée ServerCpuTooHigh.

{ "detail": { "alarmName": ["ServerCpuTooHigh"], "previousState": { "value": ["OK"] }, "state": { "value": ["ALARM"] } } }

Vous pouvez utiliser n'importe laquelle des propriétés publiées par une alarme lors d' EventBridge événements pour créer un filtre. Pour plus d’informations, consultez Événements d'alarme et EventBridge.

Configuration des notifications Amazon SNS

Vous pouvez utiliser Amazon Simple Notification Service pour envoyer à la fois des messages application-to-application (A2A) et des messages application-to-person (A2P), y compris des messages texte (SMS) mobiles et des e-mails. Pour plus d'informations, consultez la rubrique Destinations des évènements Amazon SNS.

Pour chaque état qu'une alerte peut prendre, vous pouvez configurer l'alerte pour envoyer un message à une rubrique SNS. Chaque rubrique Amazon SNS que vous configurez pour un état associé à une alerte donnée est prise en compte dans la limite du nombre d'actions que vous pouvez configurer pour cette alerte et cet état. Vous pouvez envoyer des messages à la même rubrique Amazon SNS à partir de n'importe quelle alerte de votre compte, et utiliser la même rubrique Amazon SNS pour les utilisateurs d'application à application (A2A) et d'application à personne (A2P). Étant donné que cette configuration est effectuée au niveau des alertes, seules les alertes que vous avez configurées envoient des messages à la rubrique Amazon SNS sélectionnée.

Pour commencer, créez une rubrique à laquelle vous vous abonnez. Vous pouvez, le cas échéant, publier un message test dans cette rubrique. Pour obtenir un exemple, consultez Configuration d'une rubrique Amazon SNS à l'aide du AWS Management Console. Pour plus d'informations, consultez Démarrage avec Amazon SNS.

Sinon, si vous prévoyez d'utiliser le AWS Management Console pour créer votre CloudWatch alarme, vous pouvez ignorer cette procédure car vous pouvez créer le sujet lors de la création de l'alarme.

Lorsque vous créez une CloudWatch alarme, vous pouvez ajouter des actions pour chaque état cible dans lequel l'alarme entre. Ajoutez une notification Amazon SNS pour l'état dont vous souhaitez être informé et sélectionnez la rubrique Amazon SNS que vous avez créée à l'étape précédente pour envoyer une notification par e-mail lorsque l'alerte passe à l'état sélectionné.

Note

Lorsque vous créez une rubrique Amazon SNS, vous choisissez d'en faire une rubrique standard ou une rubrique FIFO. CloudWatch garantit la publication de toutes les notifications d'alarme pour les deux types de sujets. Cependant, même si vous utilisez un sujet FIFO, dans de rares cas, CloudWatch envoie les notifications au sujet dans le désordre. Si vous utilisez une rubrique FIFO, l'alerte définit l'ID du groupe de messages des notifications d'alerte comme un hachage de l'ARN de l'alerte.

Prévenir les problèmes de sécurité confus liés aux adjoints

Le problème de député confus est un problème de sécurité dans lequel une entité qui n’est pas autorisée à effectuer une action peut contraindre une entité plus privilégiée à le faire. En AWS, l'usurpation d'identité interservices peut entraîner la confusion des adjoints. L’usurpation d’identité entre services peut se produire lorsqu’un service (le service appelant) appelle un autre service (le service appelé). Le service appelant peut être manipulé et ses autorisations utilisées pour agir sur les ressources d’un autre client auxquelles on ne serait pas autorisé d’accéder autrement. Pour éviter cela, AWS fournit des outils qui vous aident à protéger vos données pour tous les services avec des principaux de service qui ont eu accès aux ressources de votre compte.

Nous vous recommandons d'utiliser les clés aws:SourceOrgIDcontextuelles aws:SourceArnaws:SourceAccount,, et de condition aws:SourceOrgPathsglobale dans les politiques de ressources afin de limiter les autorisations qu'Amazon SNS accorde à un autre service à la ressource. aws:SourceArnÀ utiliser pour associer une seule ressource à un accès multiservice. aws:SourceAccountÀ utiliser pour associer n'importe quelle ressource de ce compte à l'utilisation interservices. aws:SourceOrgIDÀ utiliser pour permettre à n'importe quelle ressource provenant de n'importe quel compte au sein d'une organisation d'être associée à l'utilisation interservices. aws:SourceOrgPathsÀ utiliser pour associer toute ressource provenant de comptes situés dans un AWS Organizations chemin à l'utilisation interservices. Pour plus d'informations sur l'utilisation et la compréhension des chemins, voir Comprendre le chemin de l' AWS Organizations entité.

Le moyen le plus efficace de se protéger contre le problème de député confus consiste à utiliser la clé de contexte de condition globale aws:SourceArn avec l’ARN complet de la ressource. Si vous ne connaissez pas l’ARN complet de la ressource ou si vous spécifiez plusieurs ressources, utilisez la clé de contexte de condition globale aws:SourceArn avec des caractères génériques (*) pour les parties inconnues de l’ARN. Par exemple, arn:aws:servicename:*:123456789012:*.

Si la valeur aws:SourceArn ne contient pas l'ID du compte, tel qu'un ARN de compartiment Amazon S3, vous devez utiliser à la fois aws:SourceAccount et aws:SourceArn pour limiter les autorisations.

Pour se protéger contre le problème de l'adjoint confus à grande échelle, utilisez la clé de contexte de condition globale aws:SourceOrgID ou aws:SourceOrgPaths avec l'ID de l'organisation ou le chemin de l'organisation de la ressource dans vos politiques basées sur les ressources. Lorsque vous ajoutez, supprimez et déplacez des comptes dans votre organisation, les politiques qui contiennent la clé aws:SourceOrgID ou aws:SourceOrgPaths incluront automatiquement les bons comptes et vous n'avez pas besoin de mettre manuellement à jour les polices.

La valeur de aws:SourceArn doit être l'ARN de l'alarme qui envoie les notifications.

L'exemple suivant montre comment vous pouvez utiliser les touches de contexte de condition aws:SourceAccount globale aws:SourceArn et globale pour éviter le problème de confusion des adjoints.

{ "Statement": [{ "Effect": "Allow", "Principal": { "Service": "cloudwatch.amazonaws.com" }, "Action": "SNS:Publish", "Resource": "arn:aws:sns:us-east-2:444455556666:MyTopic", "Condition": { "ArnLike": { "aws:SourceArn": "arn:aws:cloudwatch:us-east-2:111122223333:alarm:*" }, "StringEquals": { "aws:SourceAccount": "111122223333" } } }] }

Si un ARN d'alerte contient des caractères non ASCII, utilisez uniquement l'option aws:SourceAccountclé de condition globale pour limiter les autorisations.

Configuration d'une rubrique Amazon SNS à l'aide du AWS Management Console

Pour commencer, créez une rubrique à laquelle vous vous abonnez. Vous pouvez, le cas échéant, publier un message test dans cette rubrique.

Pour créer une rubrique SNS
  1. Ouvrez la console Amazon SNS à partir de l’adresse https://console.aws.amazon.com/sns/v3/home.

  2. Dans le tableau de bord Amazon SNS, sous Common actions (Actions courantes), choisissez Create topic (Créer une rubrique).

  3. Dans la boîte de dialogue Create new topic (Créer une rubrique), pour Topic name (Nom de rubrique), saisissez un nom de rubrique (par exemple my-topic).

  4. Choisissez Create topic (Créer une rubrique).

  5. Copiez Topic ARN (ARN de la rubrique) pour la tâche suivante (par exemple, arn:aws:sns:us-east-1:111122223333:my-topic).

Pour s'abonner à une rubrique SNS
  1. Ouvrez la console Amazon SNS à partir de l’adresse https://console.aws.amazon.com/sns/v3/home.

  2. Dans le panneau de navigation, choisissez Subscriptions (Abonnements), puis Create a subscription (Créer un abonnement).

  3. Dans la boîte de dialogue Create subscription (Créer un abonnement), sous Topic ARN (ARN de la rubrique), collez l'ARN de la rubrique que vous avez créé à l'étape précédente.

  4. Pour Protocole, choisissez E-mail.

  5. Pour Endpoint (Point de terminaison), saisissez une adresse e-mail que vous pouvez utiliser pour recevoir la notification, puis choisissez Create subscription (Créer un abonnement).

  6. Depuis votre application de messagerie, ouvrez le message dans AWS Notifications et confirmez votre abonnement.

    Votre navigateur Web affiche une réponse de confirmation provenant de Amazon SNS.

Pour publier un message test dans une rubrique SNS
  1. Ouvrez la console Amazon SNS à partir de l’adresse https://console.aws.amazon.com/sns/v3/home.

  2. Dans le volet de navigation, choisissez Rubriques.

  3. Sur la page Topics (Rubriques), sélectionnez une rubrique, puis choisissez Publish to topic (Publier dans la rubrique).

  4. Sur la page Publish a message (Publier un message), tapez l'objet de votre message dans Subject (Sujet), puis saisissez un court message dans Message.

  5. Choisissez Publish Message (Publier un message).

  6. Vérifiez votre messagerie électronique afin de confirmer que vous avez reçu le message en provenance de la rubrique.

Configuration d'une rubrique SNS à l'aide du AWS CLI

Pour commencer, créez une rubrique SNS, puis publiez-y un message directement afin de vérifier que vous l'avez configurée correctement.

Pour configurer une rubrique SNS
  1. Créez la rubrique à l'aide de la commande create-topic, comme suit.

    aws sns create-topic --name my-topic

    Amazon SNS renvoie l'ARN d'une rubrique avec le format suivant :

    { "TopicArn": "arn:aws:sns:us-east-1:111122223333:my-topic" }
  2. Abonnez votre adresse e-mail à la rubrique à l'aide de la commande subscribe. Si la demande d'abonnement aboutit, vous recevrez un e-mail de confirmation.

    aws sns subscribe --topic-arn arn:aws:sns:us-east-1:111122223333:my-topic --protocol email --notification-endpoint my-email-address

    Amazon SNS retourne les informations suivantes :

    { "SubscriptionArn": "pending confirmation" }
  3. Depuis votre application de messagerie, ouvrez le message dans AWS Notifications et confirmez votre abonnement.

    Votre navigateur Web affiche une réponse de confirmation provenant de Amazon Simple Notification Service.

  4. Vérifiez l'abonnement à l'aide de la list-subscriptions-by-topiccommande.

    aws sns list-subscriptions-by-topic --topic-arn arn:aws:sns:us-east-1:111122223333:my-topic

    Amazon SNS retourne les informations suivantes :

    { "Subscriptions": [ { "Owner": "111122223333", "Endpoint": "me@mycompany.com", "Protocol": "email", "TopicArn": "arn:aws:sns:us-east-1:111122223333:my-topic", "SubscriptionArn": "arn:aws:sns:us-east-1:111122223333:my-topic:64886986-bf10-48fb-a2f1-dab033aa67a3" } ] }
  5. (En option) Publiez un message test dans la rubrique à l'aide de la commande publish.

    aws sns publish --message "Verification" --topic arn:aws:sns:us-east-1:111122223333:my-topic

    Amazon SNS retourne les informations suivantes.

    { "MessageId": "42f189a0-3094-5cf6-8fd7-c2dde61a4d7d" }
  6. Vérifiez votre messagerie électronique afin de confirmer que vous avez reçu le message en provenance de la rubrique.