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.
Konfigurieren von Amazon MQ für ActiveMQ-Protokolle
Damit Amazon MQ Protokolle in Logs veröffentlichen kann, müssen Sie Ihrem Amazon MQ-Benutzer eine Berechtigung hinzufügen und außerdem eine ressourcenbasierte Richtlinie für Amazon MQ konfigurieren, bevor Sie den Broker erstellen oder neu starten. CloudWatch
Anmerkung
Wenn Sie Protokolle aktivieren und Nachrichten von der ActiveMQ-Webkonsole aus veröffentlichen, wird der Inhalt der Nachricht an die Protokolle gesendet CloudWatch und dort angezeigt.
Im Folgenden werden die Schritte zum Konfigurieren von CloudWatch Protokollen für Ihre ActiveMQ-Broker beschrieben.
Themen
- Grundlegendes zur Struktur der Protokollierung von Protokollen CloudWatch
- Hinzufügen der CreateLogGroup-Berechtigung zu Ihrem Amazon-MQ-Benutzer
- Konfigurieren einer ressourcenbasierten Richtlinie für Amazon MQ.
- Serviceübergreifende Confused-Deputy-Prävention
- Fehlerbehebung bei CloudWatch der Konfiguration von Protokollen
Grundlegendes zur Struktur der Protokollierung von Protokollen CloudWatch
Sie können die allgemeine Protokollierung und die Audit-Protokollierung aktivieren, wenn Sie die erweiterten Broker-Einstellungen konfigurieren, einen Broker erstellen oder einen Broker bearbeiten.
Die allgemeine Protokollierung aktiviert die INFO
Standardprotokollierungsebene (DEBUG
Protokollierung wird nicht unterstützt) und veröffentlicht activemq.log
in einer Protokollgruppe in Ihrem CloudWatch Konto. Die Protokollgruppe hat ein Format, das in etwa aussieht wie folgt:
/aws/amazonmq/broker/b-1234a5b6-78cd-901e-2fgh-3i45j6k178l9/general
Die Auditprotokollierungaudit.log
sie in einer Protokollgruppe in Ihrem CloudWatch Konto. Die Protokollgruppe hat ein Format, das in etwa aussieht wie folgt:
/aws/amazonmq/broker/b-1234a5b6-78cd-901e-2fgh-3i45j6k178l9/audit
Je nachdem, ob Sie einen Single-Instance-Broker oder einen Active-/Standby-Broker für hohe Verfügbarkeit verwenden, erstellt Amazon MQ entweder einen oder zwei Protokollstreams in jeder Protokollgruppe. Die Protokollstreams haben ein Format, das in etwa aussieht wie folgt:
activemq-b-1234a5b6-78cd-901e-2fgh-3i45j6k178l9-1.log
activemq-b-1234a5b6-78cd-901e-2fgh-3i45j6k178l9-2.log
Die Suffixe -1
und -2
kennzeichnen einzelne Broker-Instances. Weitere Informationen finden Sie unter Working with Log Groups and Log Streams im Amazon CloudWatch Logs-Benutzerhandbuch.
Hinzufügen der CreateLogGroup
-Berechtigung zu Ihrem Amazon-MQ-Benutzer
Damit Amazon MQ eine CloudWatch Logs-Protokollgruppe erstellen kann, müssen Sie sicherstellen, dass der Benutzer, der den Broker erstellt oder neu startet, über die entsprechenden Rechte verfügt. logs:CreateLogGroup
Wichtig
Wenn Sie die CreateLogGroup
-Berechtigung nicht zu Ihrem Amazon MQ-Benutzer hinzufügen, bevor der Benutzer den Broker erstellt oder neu startet, wird die Protokollgruppe nicht von Amazon MQ erstellt.
Die folgende IAMbeispielbasierte Richtlinie gewährt Benutzern, denen diese Richtlinie zugeordnet ist, die Erlaubnis. logs:CreateLogGroup
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "logs:CreateLogGroup", "Resource": "arn:aws:logs:*:*:log-group:/aws/amazonmq/*" } ] }
Anmerkung
Hier bezieht sich der Begriff „Benutzer“ auf Benutzer und nicht auf Amazon-MQ-Benutzer, die erstellt werden, wenn ein neuer Broker konfiguriert wird. Weitere Informationen zur Einrichtung von Benutzern und zur Konfiguration von IAM Richtlinien finden Sie im Abschnitt Identity Management Overview des IAM Benutzerhandbuchs.
Weitere Informationen finden Sie CreateLogGroup
in der Amazon CloudWatch API Logs-Referenz.
Konfigurieren einer ressourcenbasierten Richtlinie für Amazon MQ.
Wichtig
Wenn Sie keine ressourcenbasierte Richtlinie für Amazon MQ konfigurieren, kann der Broker die Protokolle nicht in Logs veröffentlichen. CloudWatch
Damit Amazon MQ Protokolle in Ihrer Logs-Protokollgruppe veröffentlichen kann, konfigurieren Sie eine ressourcenbasierte Richtlinie, um Amazon MQ Zugriff auf die folgenden CloudWatch Logs-Aktionen zu gewähren: CloudWatch API
-
CreateLogStream
— Erstellt einen CloudWatch Logs-Log-Stream für die angegebene Protokollgruppe. -
PutLogEvents
— Liefert Ereignisse in den angegebenen CloudWatch Log-Log-Stream.
Die folgende ressourcenbasierte Richtlinie gewährt Berechtigungen für logs:CreateLogStream
und logs:PutLogEvents
für. AWS
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "mq.amazonaws.com" }, "Action": [ "logs:CreateLogStream", "logs:PutLogEvents" ], "Resource": "arn:aws:logs:*:*:log-group:/aws/amazonmq/*" } ] }
Diese ressourcenbasierte Richtlinie muss mithilfe des, AWS CLI wie im folgenden Befehl gezeigt, konfiguriert werden. Im Beispiel, ersetzen Sie
mit Ihren eigenen Informationen.us-east-1
aws --region
us-east-1
logs put-resource-policy --policy-name AmazonMQ-logs \ --policy-document "{\"Version\": \"2012-10-17\", \"Statement\":[{ \"Effect\": \"Allow\", \"Principal\": { \"Service\": \"mq.amazonaws.com\" }, \"Action\": [\"logs:CreateLogStream\", \"logs:PutLogEvents\"], \"Resource\": \"arn:aws:logs:*:*:log-group:\/aws\/amazonmq\/*\" }]}"
Anmerkung
Da in diesem Beispiel das /aws/amazonmq/
Präfix verwendet wird, müssen Sie die ressourcenbasierte Richtlinie nur einmal pro AWS Konto und Region konfigurieren.
Serviceübergreifende Confused-Deputy-Prävention
Das Confused-Deputy-Problem ist ein Sicherheitsproblem, bei dem eine juristische Stelle, die nicht über die Berechtigung zum Ausführen einer Aktion verfügt, eine privilegiertere juristische Stelle zwingen kann, die Aktion auszuführen. In AWS kann ein dienstübergreifendes Identitätswechsels zum Problem des verwirrten Stellvertreters führen. Ein dienstübergreifender Identitätswechsel kann auftreten, wenn ein Dienst (der Anruf-Dienst) einen anderen Dienst anruft (den aufgerufenen Dienst). Der Anruf-Dienst kann so manipuliert werden, dass er seine Berechtigungen verwendet, um auf die Ressourcen eines anderen Kunden zu reagieren, auf die er sonst nicht zugreifen dürfte. Um dies zu verhindern, AWS bietet Tools, mit denen Sie Ihre Daten für alle Dienste mit Dienstprinzipalen schützen können, denen Zugriff auf Ressourcen in Ihrem Konto gewährt wurde.
Wir empfehlen, die Kontextschlüssel aws:SourceArn
und die aws:SourceAccount
globalen Bedingungsschlüssel in Ihrer ressourcenbasierten Amazon MQ MQ-Richtlinie zu verwenden, um den CloudWatch Log-Zugriff auf einen oder mehrere angegebene Broker zu beschränken.
Anmerkung
Wenn Sie beide globalen Bedingungskontextschlüssel verwenden, müssen der aws:SourceAccount
-Wert und das Konto im aws:SourceArn
-Wert dieselbe Konto-ID verwenden, wenn sie in derselben Richtlinienanweisung verwendet werden.
Das folgende Beispiel zeigt eine ressourcenbasierte Richtlinie, die den CloudWatch Logs-Zugriff auf einen einzelnen Amazon MQ-Broker beschränkt.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "mq.amazonaws.com" }, "Action": [ "logs:CreateLogStream", "logs:PutLogEvents" ], "Resource": "arn:aws:logs:*:*:log-group:/aws/amazonmq/*", "Condition": { "StringEquals": { "aws:SourceAccount": "123456789012", "aws:SourceArn": "arn:aws:mq:us-east-2:123456789012:broker:MyBroker:b-1234a5b6-78cd-901e-2fgh-3i45j6k178l9" } } } ] }
Sie können Ihre ressourcenbasierte Richtlinie auch so konfigurieren, dass der Zugriff auf CloudWatch Protokolle auf alle Broker in einem Konto beschränkt wird, wie im Folgenden dargestellt.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": [ "mq.amazonaws.com" ] }, "Action": [ "logs:CreateLogStream", "logs:PutLogEvents" ], "Resource": "arn:aws:logs:*:*:log-group:/aws/amazonmq/*", "Condition": { "ArnLike": { "aws:SourceArn": "arn:aws:mq:*:123456789012:broker:*" }, "StringEquals": { "aws:SourceAccount": "123456789012" } } } ] }
Weitere Informationen über das Sicherheitsproblem des verwirrten Stellvertreters finden Sie unter Das Problem des verwirrten Stellvertreters im Benutzerhandbuch.
Fehlerbehebung bei CloudWatch der Konfiguration von Protokollen
In einigen Fällen verhalten sich CloudWatch Protokolle möglicherweise nicht immer wie erwartet. In diesem Abschnitt erhalten Sie einen Überblick über häufige Probleme und deren Lösungen.
Protokollgruppen erscheinen nicht in CloudWatch
Fügen Sie die CreateLogGroup-Berechtigung Ihrem Amazon MQ-Benutzer hinzu, und starten Sie den Broker neu. Dies ermöglicht Amazon MQ, die Protokollgruppe zu erstellen.
Protokollstreams werden nicht in CloudWatch Protokollgruppen angezeigt
Konfigurieren einer ressourcenbasierten Richtlinie für Amazon MQ. Dies ermöglicht es Ihrem Broker, seine Protokolle zu veröffentlichen.