View a markdown version of this page

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 menerbitkan CloudWatch log ke Log, Anda harus menambahkan izin ke pengguna Amazon MQ Anda dan juga mengonfigurasi kebijakan berbasis sumber daya untuk Amazon MQ sebelum membuat atau memulai ulang broker.

catatan

Saat Anda mengaktifkan log dan menerbitkan pesan dari konsol web ActiveMQ, konten pesan dikirim ke CloudWatch 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 pen catatan umum dan audit saat mengonfigurasi pengaturan broker lanjutan saat Anda membuat broker, atau saat Anda mengedit broker.

Pencatatan umum mengaktifkan tingkat INFO pencatatan default DEBUG (pencatatan tidak didukung) dan menerbitkan activemq.log 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

Audit logging memungkinkan pencatatan tindakan manajemen yang dilakukan menggunakan JMX atau menggunakan Konsol Web ActiveMQ dan menerbitkan audit.log ke 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

Bergantung pada apakah Anda memiliki broker instans tunggal atau active/standby broker, Amazon MQ membuat satu atau dua aliran 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 Bek erja dengan Grup Log dan Ali ran Log di Panduan CloudWatch Pengguna Amazon Log .

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.

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

JSON
{ "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 selengkapnya mengenai pengaturan pengguna dan konfigurasi kebijakan IAM, silakan lihat bagian Ikhtis ar Manajemen Identitas pada Panduan Pengguna IAM.

Untuk informasi selengkapnya, lihat CreateLogGroup Referensi API Amazon CloudWatch Logs.

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 menerbitkan log ke grup CloudWatch log log Anda, konfigurasikan kebijakan berbasis sumber daya untuk memberikan akses Amazon MQ ke tindakan Logs API berikut: CloudWatch

  • CreateLogStream- Membuat aliran CloudWatch log log untuk grup log yang ditentukan.

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

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

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 AWS akun, per wilayah.

Cross-service pencegahan wakil yang bingung

Masalah "confused deputy" adalah masalah keamanan di mana entitas yang tidak memiliki izin untuk melakukan tindakan dapat memengaruhi entitas yang memiliki hak akses lebih tinggi untuk melakukan tindakan. Pada tahun AWS, peniruan lintas layanan dapat mengakibatkan masalah wakil yang membingungkan. Cross-service peniruan diri dapat terjadi ketika satu layanan (layanan panggilan) memanggil layanan lain (layanan yang disebut). 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 menyediakan alat yang membantu Anda melindungi data untuk semua layanan dengan prinsipal layanan yang telah diberikan akses ke sumber daya di akun Anda.

Sebaiknya gunakan kunci konteks kondisi aws:SourceAccount global aws:SourceArn dan kunci 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 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" } } } ] }

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

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

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