Wie konfiguriere ich einen CloudWatch-Alarm mit einem verschlüsselten SNS-Thema?
Ich möchte einen Amazon CloudWatch-Alarm mit einem verschlüsselten Amazon Simple Notification Service (Amazon-SNS)-Thema konfigurieren.
Kurzbeschreibung
Du musst einen vom Kunden verwalteten Schlüssel im AWS Key Management Service (AWS KMS) verwenden, um Amazon SNS-Benachrichtigungen mit einem verschlüsselten Amazon SNS-Thema für einen CloudWatch-Alarm zu senden. Wenn du den standardmäßigen von AWS verwalteten Schlüssel alias/aws/sns für die Verschlüsselung verwendest, schlägt der CloudWatch-Alarm beim Starten der Alarmaktion fehl. Dann erhältst du im Abschnitt Alarmverlauf eine Meldung, die der folgenden ähnelt:
„Failed to execute action arn:aws:sns:us-east-1:ACCOUNT_ID:TOPIC_NAME. Received error: "CloudWatch Alarms does not have authorization to access the SNS topic encryption key."“
Hinweis: Die standardmäßige AWS-KMS-Schlüsselrichtlinie für Amazon SNS erlaubt CloudWatch-Alarmen nicht, die API-Aufrufe kms:Decrypt und kms:GenerateDataKey auszuführen. Du kannst Richtlinien für von AWS verwaltete Schlüssel nicht manuell bearbeiten.
Lösung
Um einen CloudWatch-Alarm mit einem verschlüsselten Amazon SNS-Thema zu konfigurieren, führe die folgenden Schritte aus:
-
Öffne die Amazon-SNS-Konsole.
-
Wähle Thema erstellen aus.
-
Wähle für Typ die Option Standard aus und erstelle dann einen Themennamen und Anzeigenamen.
-
Erweitere die Einstellung Verschlüsselung – Optional, um Verschlüsselung zu aktivieren.
-
Wähle einen vom Kunden verwalteten Schlüssel aus.
-
Bearbeite die Schlüsselrichtlinie manuell, um CloudWatch-Alarmen die Berechtigungen Decrypt und GenerateDataKey zu erteilen, damit sie Nachrichten an verschlüsselte Amazon-SNS-Themen veröffentlichen können:
{ "Sid": "Allow_CloudWatch_for_CMK", "Effect": "Allow", "Principal": { "Service": [ "cloudwatch.amazonaws.com" ] }, "Action": [ "kms:Decrypt", "kms:GenerateDataKey*" ], "Resource": "*" } -
(Optional) Um die Richtlinie restriktiver zu machen, schließe ein Bedingung-Element ein. Zum Beispiel erlaubt der Bedingung-Kontextschlüssel in der folgenden Richtlinie die Aktion nur von der Organisation o-123456789:
"Resource": "*" "Condition": { "StringEquals": { "aws:SourceOrgID": "o-123456789" } -
Stelle sicher, dass die Zugriffsrichtlinie des Amazon SNS-Themas die Berechtigung Veröffentlichen enthält, damit CloudWatch-Alarme Nachrichten an das Amazon-SNS-Thema veröffentlichen können:
{ "Sid": "Allow_Publish_Alarms", "Effect": "Allow", "Principal": { "Service": [ "cloudwatch.amazonaws.com" ] }, "Action": "sns:Publish", "Resource": "arn:aws:sns:example-region:example-account-id:example-topic"}Hinweis: Ersetze example-region durch deine AWS-Region, example-account-id durch die Konto-ID und example-topic durch den Themennamen.
-
Wähle Thema erstellen aus.
-
Erstelle den CloudWatch-Alarm basierend auf einem der folgenden Punkte:<br id=hardline_break/> Statischer Schwellenwert<br id=hardline_break/> Metrisch mathematischer Ausdruck<br id=hardline_break/> Metrik-Insights-Abfrage<br id=hardline_break/> Verbundene Datenquelle<br id=hardline_break/> Anomalieerkennung
Ähnliche Informationen
Amazon CloudWatch-Alarme verwenden
Verschlüsseln von auf Amazon SNS veröffentlichten Nachrichten mit AWS KMS
Warum habe ich keine SNS-Benachrichtigung für meinen CloudWatch-Alarmauslöser erhalten?
- Sprache
- Deutsch
Ähnliche Videos


Relevanter Inhalt
AWS OFFICIALAktualisiert vor einem Jahr
AWS OFFICIALAktualisiert vor 7 Monaten