Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Benachrichtigen von Benutzern über Alarmänderungen
In diesem Abschnitt wird erklärt, wie Sie AWS Benutzerbenachrichtigungen oder Amazon Simple Notification Service verwenden können, um Benutzer über Alarmänderungen zu benachrichtigen.
AWS Benutzerbenachrichtigungen einrichten
Sie können AWS Benutzerbenachrichtigungen verwenden, um Zustellungskanäle einzurichten, über die Sie über Änderungen des CloudWatch Alarmstatus und über Änderungen der Konfiguration informiert werden. Sie erhalten eine Benachrichtigung, wenn ein Ereignis einer von Ihnen angegebenen Regel entspricht. Sie können Benachrichtigungen für Ereignisse über mehrere Kanäle erhalten, einschließlich E-Mail, AWS -Chatbot-Chat-Benachrichtigungen oder Push-Benachrichtigungen der mobilen AWS -Konsolenanwendung. Benachrichtigungen werden auch im Console Notifications Center
Die Benachrichtigungskonfigurationen, die Sie mit AWS Benutzerbenachrichtigungen erstellen, werden nicht auf die maximale Anzahl von Aktionen angerechnet, die Sie pro Zielalarmstatus konfigurieren können. Da AWS Benutzerbenachrichtigungen mit den an Amazon gesendeten Ereignissen übereinstimmen EventBridge, sendet Amazon Benachrichtigungen für alle Alarme in Ihrem Konto und ausgewählten Regionen, sofern Sie keinen erweiterten Filter angeben, um bestimmte Alarme oder Muster zuzulassen oder abzulehnen.
Das folgende Beispiel für einen erweiterten Filter entspricht einer Änderung des Alarmstatus von OK auf den angegebenen Alarm. ALARM ServerCpuTooHigh
{ "detail": { "alarmName": ["ServerCpuTooHigh"], "previousState": { "value": ["OK"] }, "state": { "value": ["ALARM"] } } }
Sie können jede der von einem Alarm in EventBridge Ereignissen veröffentlichten Eigenschaften verwenden, um einen Filter zu erstellen. Weitere Informationen finden Sie unter Alarmereignisse und EventBridge.
SNSAmazon-Benachrichtigungen einrichten
Sie können Amazon Simple Notification Service verwenden, um sowohl application-to-application (A2A) als auch application-to-person (A2P) -Nachrichten zu senden, einschließlich mobiler Textnachrichten (SMS) und E-Mail-Nachrichten. Weitere Informationen finden Sie unter Amazon SNS Event Destinations.
Für jeden Status, den ein Alarm annehmen kann, können Sie den Alarm so konfigurieren, dass er eine Nachricht an ein SNS Thema sendet. Jedes SNS Amazon-Thema, das Sie für einen Status bei einem bestimmten Alarm konfigurieren, wird auf die maximale Anzahl von Aktionen angerechnet, die Sie für diesen Alarm und diesen Status konfigurieren können. Sie können von allen Alarmen in Ihrem Konto aus Nachrichten an dasselbe SNS Amazon-Thema senden und dasselbe SNS Amazon-Thema sowohl für Anwendungs- (A2A) als auch für Privatkunden (A2P) verwenden. Da diese Konfiguration auf Alarmebene erfolgt, senden nur die von Ihnen konfigurierten Alarme Nachrichten an das ausgewählte SNS Amazon-Thema.
Zunächst erstellen und abonnieren Sie ein Thema. Sie können optional eine Testnachricht für das Thema veröffentlichen. Ein Beispiel finden Sie unter Einrichten eines SNS Amazon-Themas mit dem AWS Management Console. Weitere Informationen finden Sie unter Erste Schritte mit Amazon SNS.
Wenn Sie den AWS Management Console zur Erstellung Ihres CloudWatch Alarms verwenden möchten, können Sie dieses Verfahren alternativ überspringen, da Sie das Thema bei der Erstellung des Alarms erstellen können.
Wenn Sie einen CloudWatch Alarm erstellen, können Sie Aktionen für jeden Zielstatus hinzufügen, in den der Alarm eintritt. Fügen Sie eine SNS Amazon-Benachrichtigung für den Bundesstaat hinzu, über den Sie benachrichtigt werden möchten, und wählen Sie das SNS Amazon-Thema aus, das Sie im vorherigen Schritt erstellt haben, um eine E-Mail-Benachrichtigung zu senden, wenn der Alarm den ausgewählten Status erreicht.
Anmerkung
Wenn Sie ein SNS Amazon-Thema erstellen, entscheiden Sie, ob Sie es zu einem Standardthema oder einem FIFOThema machen möchten. CloudWatch garantiert die Veröffentlichung aller Alarmmeldungen zu beiden Thementypen. Selbst wenn Sie ein FIFO Thema verwenden, werden die Benachrichtigungen in seltenen Fällen nicht in der richtigen Reihenfolge an das Thema CloudWatch gesendet. Wenn Sie ein FIFO Thema verwenden, setzt der Alarm die Nachrichtengruppen-ID der Alarmbenachrichtigungen auf einen Hash ARN des Alarms.
Themen
Vermeiden Sie verwirrende Sicherheitsprobleme bei Stellvertretern
Das Problem des verwirrten Stellvertreters ist ein Sicherheitsproblem, bei dem eine Entität, die keine Berechtigung zur Durchführung einer Aktion hat, eine privilegiertere Entität zur Durchführung der Aktion zwingen kann. In der AWS Tat kann ein dienstübergreifendes Identitätswechsels zu einem Problem mit verwirrten Stellvertretern führen. Ein dienstübergreifender Identitätswechsel kann auftreten, wenn ein Dienst (der Anruf-Dienst) einen anderen Dienst anruft (den aufgerufenen Dienst). Der aufrufende Service kann manipuliert werden, um seine Berechtigungen zu verwenden, um Aktionen auf die Ressourcen eines anderen Kunden auszuführen, für die er sonst keine Zugriffsberechtigung haben sollte. Um dies zu verhindern, bietet AWS Tools, mit denen Sie Ihre Daten für alle Services mit Serviceprinzipalen schützen können, die Zugriff auf Ressourcen in Ihrem Konto erhalten haben.
Wir empfehlen aws:SourceArn
, die Kontextschlüssel aws:SourceAccount
, aws:SourceOrgID
, und aws:SourceOrgPaths
global condition in Ressourcenrichtlinien zu verwenden, um die Berechtigungen einzuschränken, die Amazon einem anderen Service für die Ressource SNS erteilt. Verwenden Sie diese aws:SourceArn
Option, um nur einer Ressource einen dienstübergreifenden Zugriff zuzuordnen. Wird verwendetaws:SourceAccount
, damit jede Ressource in diesem Konto der dienstübergreifenden Nutzung zugeordnet werden kann. Wird verwendetaws:SourceOrgID
, um zu ermöglichen, dass jede Ressource aus einem beliebigen Konto innerhalb einer Organisation mit der dienstübergreifenden Nutzung verknüpft wird. Wird verwendetaws:SourceOrgPaths
, um jede Ressource aus Konten innerhalb eines AWS Organizations Pfads der dienstübergreifenden Nutzung zuzuordnen. Weitere Informationen zur Verwendung und zum Verständnis von Pfaden finden Sie unter Grundlegendes zum AWS Organizations Entitätspfad.
Der wirksamste Schutz vor dem Problem mit dem verwirrten Deputy ist die Verwendung des Kontextschlüssels für aws:SourceArn
globale Bedingungen mit ARN der gesamten Ressource. Wenn Sie die gesamte ARN Ressource nicht kennen oder wenn Sie mehrere Ressourcen angeben, verwenden Sie den aws:SourceArn
globalen Kontextbedingungsschlüssel mit Platzhalterzeichen (*
) für die unbekannten Teile von. ARN Beispiel, arn:aws:
. servicename
:*:123456789012
:*
Wenn der aws:SourceArn
Wert die Konto-ID nicht enthält, z. B. ein Amazon S3 S3-BucketARN, müssen Sie beide verwenden aws:SourceAccount
und, aws:SourceArn
um die Berechtigungen einzuschränken.
Um sich vor dem Confused-Deputy-Problem im großen Maßstab zu schützen, verwenden Sie den globalen Bedingungskontextschlüssel aws:SourceOrgID
oder aws:SourceOrgPaths
mit der Organisations-ID oder dem Organisationspfad der Ressource in Ihren ressourcenbasierten Richtlinien. Richtlinien, die den Schlüssel aws:SourceOrgID
oder aws:SourceOrgPaths
enthalten, schließen automatisch die richtigen Konten ein und Sie müssen die Richtlinien nicht manuell aktualisieren, wenn Sie Konten in Ihrer Organisation hinzufügen, entfernen oder verschieben.
Der Wert von aws:SourceArn
muss dem Wert ARN des Alarms entsprechen, der Benachrichtigungen sendet.
Das folgende Beispiel zeigt, wie Sie die Kontextschlüssel aws:SourceArn
und die aws:SourceAccount
globale Bedingung verwenden können, CloudWatch um das Problem des verwirrten Stellvertreters zu vermeiden.
{ "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" } } }] }
Wenn ein Alarm irgendwelche ASCII Nichtzeichen ARN enthält, verwenden Sie nur den aws:SourceAccount
globalen Bedingungsschlüssel, um die Berechtigungen einzuschränken.
Einrichten eines SNS Amazon-Themas mit dem AWS Management Console
Zunächst erstellen und abonnieren Sie ein Thema. Sie können optional eine Testnachricht für das Thema veröffentlichen.
So erstellen Sie ein SNS-Thema
Öffnen Sie die SNS Amazon-Konsole unter https://console.aws.amazon.com/sns/v3/home
. -
Wählen Sie im SNS Amazon-Dashboard unter Allgemeine Aktionen die Option Thema erstellen aus.
-
Geben Sie im Dialogfeld Create new topic (Neues Thema erstellen) unter Topic name (Themaname) einen Namen für das Thema ein (z. B.
my-topic
). -
Wählen Sie Thema erstellen aus.
-
Kopieren Sie das Thema ARN für die nächste Aufgabe (z. B. arn:aws:sns:us-east- 1:111122223333:my-topic).
Abonnieren eines SNS-Themas
Öffnen Sie die SNS Amazon-Konsole unter https://console.aws.amazon.com/sns/v3/home
. -
Wählen Sie im Navigationsbereich Abonnements und Abonnement erstellen aus.
-
Fügen Sie im Dialogfeld Abonnement erstellen unter Thema das Thema einARN, ARN das Sie in der vorherigen Aufgabe erstellt haben.
-
Wählen Sie unter Protocol (Protokoll) die Option Email (E-Mail) aus.
-
Geben Sie für Endpoint (Endpunkt) eine E-Mail-Adresse ein, mit der Sie die Benachrichtigung erhalten können, und wählen Sie dann Create subscription (Abonnement erstellen).
-
Öffnen Sie in Ihrer E-Mail-Anwendung die Nachricht unter AWS Benachrichtigungen und bestätigen Sie Ihr Abonnement.
Ihr Webbrowser zeigt eine Bestätigungsantwort von Amazon anSNS.
Um eine Testnachricht zu einem SNS Thema zu veröffentlichen
-
Öffnen Sie die SNS Amazon-Konsole unter https://console.aws.amazon.com/sns/v3/home
. -
Wählen Sie im Navigationsbereich Themen aus.
-
Wählen Sie auf der Seite Topics ein Thema und dann Publish to topic aus.
-
Geben Sie auf der Seite Publish a message (Veröffentlichen einer Nachricht) unter Subject (Betreff) eine Betreffzeile für Ihre Nachricht und unter Message (Nachricht) eine kurze Nachricht ein.
-
Wählen Sie Publish Message aus.
-
Überprüfen Sie Ihren E-Mail-Eingang, um zu bestätigen, dass Sie die Nachricht erhalten haben.
Einrichten eines SNS Themas mit dem AWS CLI
Zuerst erstellen Sie ein SNS Thema und veröffentlichen dann eine Nachricht direkt zum Thema, um zu testen, ob Sie es richtig konfiguriert haben.
Um ein SNS Thema einzurichten
-
Erstellen Sie das Thema mit dem Befehl create-topic wie folgt.
aws sns create-topic --name
my-topic
Amazon SNS gibt ein Thema ARN mit dem folgenden Format zurück:
{ "TopicArn": "arn:aws:sns:us-east-1:111122223333:my-topic" }
-
Abonnieren Sie die E-Mail-Adresse für das Thema mit dem Befehl subscribe. Wenn die Abonnementanfrage erfolgreich ist, erhalten Sie eine Bestätigungs-E-Mail.
aws sns subscribe --topic-arn arn:aws:sns:
us-east-1
:111122223333
:my-topic
--protocol email --notification-endpointmy-email-address
Amazon SNS gibt Folgendes zurück:
{ "SubscriptionArn": "pending confirmation" }
-
Öffnen Sie in Ihrer E-Mail-Anwendung die Nachricht unter AWS Benachrichtigungen und bestätigen Sie Ihr Abonnement.
Ihr Webbrowser zeigt eine Bestätigungsantwort vom Amazon Simple Notification Service an.
-
Überprüfen Sie das Abonnement mit dem list-subscriptions-by-topicBefehl.
aws sns list-subscriptions-by-topic --topic-arn arn:aws:sns:
us-east-1
:111122223333
:my-topic
Amazon SNS gibt Folgendes zurück:
{ "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" } ] }
-
(Optional) Veröffentlichen Sie mit dem Befehl publish eine Testnachricht für das Thema.
aws sns publish --message "Verification" --topic arn:aws:sns:
us-east-1
:111122223333
:my-topic
Amazon SNS gibt Folgendes zurück.
{ "MessageId": "42f189a0-3094-5cf6-8fd7-c2dde61a4d7d" }
-
Überprüfen Sie Ihren E-Mail-Eingang, um zu bestätigen, dass Sie die Nachricht erhalten haben.
Schema der SNS Amazon-Benachrichtigungen, wenn sich der Status von Alarmen ändert
In diesem Abschnitt sind die Schemas der Benachrichtigungen aufgeführt, die an SNS Amazon-Themen gesendet werden, wenn Alarme ihren Status ändern.
Schema, wenn sich der Status eines metrischen Alarms ändert
{ "AlarmName": "string", "AlarmDescription": "string", "AWSAccountId": "string", "AlarmConfigurationUpdatedTimestamp": "string", "NewStateValue": "string", "NewStateReason": "string", "StateChangeTime": "string", "Region": "string", "AlarmArn": "string", "OldStateValue": "string", "OKActions": ["string"], "AlarmActions": ["string"], "InsufficientDataActions": ["string"], "Trigger": { "MetricName": "string", "Namespace": "string", "StatisticType": "string", "Statistic": "string", "Unit": "string or null", "Dimensions": [ { "value": "string", "name": "string" } ], "Period": "integer", "EvaluationPeriods": "integer", "DatapointsToAlarm": "integer", "ComparisonOperator": "string", "Threshold": "number", "TreatMissingData": "string", "EvaluateLowSampleCountPercentile": "string or null" } }
Schema, wenn ein zusammengesetzter Alarm den Status ändert
{ "AlarmName": "string", "AlarmDescription": "string", "AWSAccountId": "string", "NewStateValue": "string", "NewStateReason": "string", "StateChangeTime": "string", "Region": "string", "AlarmArn": "string", "OKActions": [String], "AlarmActions": [String], "InsufficientDataActions": [String], "OldStateValue": "string", "AlarmRule": "string", "TriggeringChildren": [String] }