View a markdown version of this page

Configurazione dei log di Amazon MQ per ActiveMQ - Amazon MQ

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Configurazione dei log di Amazon MQ per ActiveMQ

Per consentire ad Amazon MQ di pubblicare i log su CloudWatch Logs, devi aggiungere un'autorizzazione al tuo utente Amazon MQ e configurare anche una policy basata sulle risorse per Amazon MQ prima di creare o riavviare il broker.

Nota

Quando attivi i log e pubblichi messaggi dalla console web ActiveMQ, il contenuto del messaggio viene inviato CloudWatch e visualizzato nei log.

Di seguito vengono descritti i passaggi per configurare i CloudWatch log per i broker ActiveMQ.

Comprensione della struttura di accesso ai log CloudWatch

È possibile abilitare la registrazione generale e di controllo quando si configurano le impostazioni avanzate del broker, quando si crea un broker o quando si modifica un broker.

La registrazione generale abilita il livello di INFO registrazione predefinito (la DEBUG registrazione non è supportata) e viene pubblicata in un gruppo di log nel activemq.log tuo account. CloudWatch Il formato del gruppo di log è simile al seguente:

/aws/amazonmq/broker/b-1234a5b6-78cd-901e-2fgh-3i45j6k178l9/general

La registrazione di controllo consente la registrazione delle azioni di gestione intraprese utilizzando JMX o tramite ActiveMQ Web Console e le pubblica in un gruppo di log dell'account. audit.log CloudWatch Il formato del gruppo di log è simile al seguente:

/aws/amazonmq/broker/b-1234a5b6-78cd-901e-2fgh-3i45j6k178l9/audit

A seconda che tu disponga di un broker a istanza singola o di un active/standby broker, Amazon MQ crea uno o due flussi di log all'interno di ciascun gruppo di log. Il formato dei flussi di log è simile al seguente.

activemq-b-1234a5b6-78cd-901e-2fgh-3i45j6k178l9-1.log activemq-b-1234a5b6-78cd-901e-2fgh-3i45j6k178l9-2.log

I suffissi -1 e -2 denotano singole istanze broker. Per ulteriori informazioni, consulta Working with Log Groups and Log Streams nella Amazon CloudWatch Logs User Guide.

Aggiunta dell'autorizzazione CreateLogGroup all'utente Amazon MQ

Per consentire ad Amazon MQ di creare un gruppo di CloudWatch log Logs, devi assicurarti che l'utente che crea o riavvia il broker disponga dell'autorizzazione. logs:CreateLogGroup

Importante

Se non aggiungi l'autorizzazione CreateLogGroup all'utente Amazon MQ prima che l'utente crei o riavvi il broker, Amazon MQ non crea il gruppo di registri.

Il seguente esempio di IAM-based policy concede l'autorizzazione logs:CreateLogGroup agli utenti a cui è associata questa policy.

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "logs:CreateLogGroup", "Resource": "arn:aws:logs:*:*:log-group:/aws/amazonmq/*" } ] }
Nota

Qui il termine utente si riferisce agli utenti IAM e non agli utenti Amazon MQ, che vengono creati quando viene configurato un nuovo broker. Per ulteriori informazioni sulla configurazione degli utenti e delle policy IAM, fare riferimento alla Panoramica della gestione delle identità della Guida per l'utente di IAM.

Per ulteriori informazioni, consulta CreateLogGroup Amazon CloudWatch Logs API Reference.

Configurare una policy basata sulle risorse per Amazon MQ

Importante

Se non configuri una policy basata sulle risorse per Amazon MQ, il broker non può pubblicare i log su Logs. CloudWatch

Per consentire ad Amazon MQ di pubblicare i log nel tuo gruppo di CloudWatch log Logs, configura una policy basata sulle risorse per consentire ad Amazon MQ di accedere alle seguenti azioni dell'API Logs: CloudWatch

  • CreateLogStream— Crea un flusso di CloudWatch log Logs per il gruppo di log specificato.

  • PutLogEvents— Fornisce eventi al flusso di CloudWatch log Logs specificato.

La seguente politica basata sulle risorse concede l'autorizzazione per e per. logs:CreateLogStream logs:PutLogEvents AWS

JSON
{ "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/*" } ] }

Questa politica basata sulle risorse deve essere configurata utilizzando il AWS CLI comando seguente. Nell'esempio, sostituire us-east-1 con le tue informazioni.

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\/*\" }]}"
Nota

Poiché questo esempio utilizza il /aws/amazonmq/ prefisso, è necessario configurare la politica basata sulle risorse solo una volta per account, per regione. AWS

Cross-service prevenzione sostitutiva confusa

Il problema confused deputy è un problema di sicurezza in cui un’entità che non dispone dell’autorizzazione per eseguire un’azione può costringere un’entità maggiormente privilegiata a eseguire l’azione. Nel AWS, l'impersonificazione tra servizi può portare al confuso problema del vice. Cross-service l'imitazione può avvenire quando un servizio (il servizio chiamante) chiama un altro servizio (il servizio chiamato). Il servizio chiamante può essere manipolato per utilizzare le proprie autorizzazioni e agire sulle risorse di un altro cliente, a cui normalmente non avrebbe accesso. Per evitare che ciò accada, AWS fornisce strumenti che consentono di proteggere i dati per tutti i servizi ai quali è stato concesso l'accesso alle risorse del proprio account.

Ti consigliamo di utilizzare aws:SourceArn le chiavi di contesto di condizione aws:SourceAccount globali nella tua policy basata sulle risorse di Amazon MQ per limitare l'accesso ai CloudWatch log a uno o più broker specificati.

Nota

Se si utilizzano entrambe le chiavi di contesto delle condizioni globali, il valore aws:SourceAccount e l'account nel valore aws:SourceArn devono utilizzare lo stesso ID account nella stessa istruzione di policy.

L'esempio seguente illustra una policy basata sulle risorse che limita l'accesso ai CloudWatch log a un singolo broker Amazon MQ.

JSON
{ "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-west-1:123456789012:broker:my-broker:123456789012" } } } ] }

Puoi anche configurare la tua policy basata sulle risorse per limitare l'accesso ai CloudWatch log a tutti i broker di un account, come mostrato di seguito.

JSON
{ "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" } } } ] }

Per ulteriori informazioni sul problema di sicurezza "confused deputy", consulta Problema del "confused deputy" nella Guida per l'utente di IAM.