Mengkonfigurasi Amazon MQ untuk log ActiveMQ - Amazon MQ

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Mengkonfigurasi Amazon MQ untuk log ActiveMQ

Untuk mengizinkan Amazon MQ mempublikasikan CloudWatch log ke Log, Anda harus menambahkan izin ke pengguna Amazon MQ Anda dan juga mengonfigurasi kebijakan berbasis sumber daya untuk Amazon MQ sebelum Anda membuat atau memulai ulang broker.

catatan

Saat Anda mengaktifkan log dan mempublikasikan pesan dari konsol web ActiveMQ, konten pesan dikirim CloudWatch ke dan ditampilkan di log.

Berikut ini menjelaskan langkah-langkah untuk mengkonfigurasi CloudWatch log untuk broker ActiveMQ Anda.

Memahami struktur logging di CloudWatch Log

Anda dapat mengaktifkan umum dan pencatatan audit saat mengonfigurasi pengaturan broker lanjutan ketika membuat broker, atau saat Anda mengedit broker.

Pencatatan umum memungkinkan tingkat INFO pencatatan default (DEBUGpencatatan tidak didukung) dan activemq.log memublikasikan ke grup log di CloudWatch akun Anda. Grup log memiliki format yang serupa dengan hal berikut:

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

Pencatatan audit memungkinkan pencatatan tindakan manajemen yang dilakukan menggunakan JMX atau menggunakan ActiveMQ Web Console dan memublikasikan ke audit.log grup log di akun Anda. CloudWatch Grup log memiliki format yang serupa dengan hal berikut:

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

Tergantung pada apakah Anda memiliki broker instans tunggal atau broker aktif/siaga, Amazon MQ membuat satu atau dua pengaliran log dalam setiap grup log. Pengaliran log memiliki format yang serupa dengan hal berikut.

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

Sufiks -1 dan -2 menunjukkan instans broker individual. Untuk informasi selengkapnya, lihat Bekerja dengan Grup Log dan Aliran Log di Panduan Pengguna Amazon CloudWatch Logs.

Tambahkan CreateLogGroup izin ke pengguna Amazon MQ Anda

Untuk mengizinkan Amazon MQ membuat grup CloudWatch log Log, Anda harus memastikan bahwa pengguna yang membuat atau me-reboot broker memiliki izin. logs:CreateLogGroup

penting

Jika Anda tidak menambahkan izin CreateLogGroup ke pengguna Amazon MQ sebelum pengguna membuat atau mem-boot ulang broker, Amazon MQ tidak membuat grup log.

Kebijakan IAM berbasis contoh berikut memberikan izin logs:CreateLogGroup bagi pengguna yang kepadanya kebijakan ini dilampirkan.

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

Di sini, istilah pengguna mengacu pada Pengguna dan bukan pengguna Amazon MQ, yang dibuat ketika broker baru dikonfigurasi. Untuk informasi lebih lanjut mengenai pengaturan pengguna dan IAM kebijakan konfigurasi, silakan merujuk ke bagian Ikhtisar Manajemen Identitas dari Panduan IAM Pengguna.

Untuk informasi selengkapnya, lihat CreateLogGroup di APIReferensi CloudWatch Log Amazon.

Mengonfigurasi kebijakan berbasis sumber daya untuk Amazon MQ

penting

Jika Anda tidak mengonfigurasi kebijakan berbasis sumber daya untuk Amazon MQ, broker tidak dapat mempublikasikan log ke Log. CloudWatch

Untuk mengizinkan Amazon MQ memublikasikan log ke grup CloudWatch log Log Anda, konfigurasikan kebijakan berbasis sumber daya untuk memberi Amazon MQ akses ke tindakan Log berikut: CloudWatch API

  • CreateLogStream— Membuat aliran CloudWatch log Log untuk grup log tertentu.

  • PutLogEvents— Mengirimkan peristiwa ke aliran CloudWatch log Log yang ditentukan.

Kebijakan berbasis sumber daya berikut memberikan izin untuk dan untuk. logs:CreateLogStream logs:PutLogEvents 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/*" } ] }

Kebijakan berbasis sumber daya ini harus dikonfigurasi dengan menggunakan AWS CLI seperti yang ditunjukkan oleh perintah berikut. Dalam contoh, ganti us-east-1 dengan informasi Anda sendiri.

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

Karena contoh ini menggunakan /aws/amazonmq/ awalan, Anda perlu mengonfigurasi kebijakan berbasis sumber daya hanya sekali per akun, per AWS wilayah.

Pencegahan confused deputy lintas layanan

Masalah confused deputy adalah masalah keamanan saat entitas yang tidak memiliki izin untuk melakukan suatu tindakan dapat memaksa entitas yang lebih berhak untuk melakukan tindakan tersebut. Pada tahun AWS, peniruan lintas layanan dapat mengakibatkan masalah wakil yang membingungkan. Peniruan identitas lintas layanan dapat terjadi ketika satu layanan (layanan yang dipanggil) memanggil layanan lain (layanan yang dipanggil). Layanan pemanggilan dapat dimanipulasi menggunakan izinnya untuk bertindak pada sumber daya pelanggan lain dengan cara yang seharusnya tidak dilakukannya kecuali bila memiliki izin untuk mengakses. Untuk mencegah hal ini, AWS sediakan alat yang membantu Anda melindungi data Anda untuk semua layanan dengan prinsip layanan yang telah diberikan akses ke sumber daya di akun Anda.

Sebaiknya gunakan kunci konteks kondisi aws:SourceAccount global aws:SourceArn dan global dalam kebijakan berbasis sumber daya Amazon MQ Anda untuk membatasi akses CloudWatch Log ke satu atau beberapa broker tertentu.

catatan

Jika Anda menggunakan kedua kunci konteks kondisi global, aws:SourceAccount nilai dan akun dalam aws:SourceArn nilai harus menggunakan ID akun yang sama saat digunakan dalam pernyataan kebijakan yang sama.

Contoh berikut menunjukkan kebijakan berbasis sumber daya yang membatasi akses CloudWatch Log ke satu broker MQ Amazon.

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

Anda juga dapat mengonfigurasi kebijakan berbasis sumber daya Anda untuk membatasi akses CloudWatch Log ke semua broker di akun, seperti yang ditunjukkan di bawah ini.

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

Untuk informasi lebih lanjut tentang masalah keamanan wakil yang membingungkan, lihat Masalah wakil yang bingung di Panduan Pengguna.