Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Langkah 1: Perbarui filter langganan
catatan
Langkah ini diperlukan hanya untuk langganan lintas akun untuk log yang dibuat oleh layanan yang tercantum di. Aktifkan pencatatan dari AWS layanan Jika Anda tidak bekerja dengan log yang dibuat oleh salah satu grup log ini, Anda dapat melompat ke Langkah 2: Perbarui kebijakan akses tujuan yang ada.
Dalam kasus tertentu, Anda harus memperbarui filter langganan di semua akun pengirim yang mengirim log ke akun tujuan. Pembaruan menambahkan IAM peran, yang CloudWatch dapat mengasumsikan dan memvalidasi bahwa akun pengirim memiliki izin untuk mengirim log ke akun penerima.
Ikuti langkah-langkah di bagian ini untuk setiap akun pengirim yang ingin Anda perbarui untuk menggunakan ID organisasi untuk izin berlangganan lintas akun.
Dalam contoh di bagian ini, dua akun, 111111111111
dan 222222222222
sudah memiliki filter berlangganan yang dibuat untuk mengirim log ke akun999999999999
. Nilai filter langganan yang ada adalah sebagai berikut:
## Existing Subscription Filter parameter values \ --log-group-name "my-log-group-name" \ --filter-name "RecipientStream" \ --filter-pattern "{$.userIdentity.type = Root}" \ --destination-arn "arn:aws:logs:region:999999999999:destination:testDestination"
Jika Anda perlu menemukan nilai parameter filter langganan saat ini, masukkan perintah berikut.
aws logs describe-subscription-filters \ --log-group-name "
my-log-group-name
"
Untuk memperbarui filter langganan untuk mulai menggunakan organisasi IDs untuk izin log lintas akun
Buat kebijakan kepercayaan berikut dalam sebuah file
~/TrustPolicyForCWL.json
. Gunakan editor teks untuk membuat file kebijakan ini; jangan gunakan IAM konsol.{ "Statement": { "Effect": "Allow", "Principal": { "Service": "logs.amazonaws.com" }, "Action": "sts:AssumeRole" } }
Buat IAM peran yang menggunakan kebijakan ini. Perhatikan nilai
Arn
Arn
nilai yang dikembalikan oleh perintah, Anda akan membutuhkannya nanti dalam prosedur ini. Dalam contoh ini, kita gunakanCWLtoSubscriptionFilterRole
untuk nama peran yang kita buat.aws iam create-role \ --role-name CWLtoSubscriptionFilterRole \ --assume-role-policy-document file://~/TrustPolicyForCWL.json
Buat kebijakan izin untuk menentukan tindakan yang dapat dilakukan CloudWatch Log di akun Anda.
Pertama, gunakan editor teks untuk membuat kebijakan izin berikut dalam file bernama
/PermissionsForCWLSubscriptionFilter.json
.{ "Statement": [ { "Effect": "Allow", "Action": "logs:PutLogEvents", "Resource": "arn:aws:logs:region:111111111111:log-group:LogGroupOnWhichSubscriptionFilterIsCreated:*" } ] }
Masukkan perintah berikut untuk mengaitkan kebijakan izin yang baru saja Anda buat dengan peran yang Anda buat di langkah 2.
aws iam put-role-policy --role-name CWLtoSubscriptionFilterRole --policy-name Permissions-Policy-For-CWL-Subscription-filter --policy-document file://~/PermissionsForCWLSubscriptionFilter.json
Masukkan perintah berikut untuk memperbarui filter langganan.
aws logs put-subscription-filter \ --log-group-name "my-log-group-name" \ --filter-name "RecipientStream" \ --filter-pattern "{$.userIdentity.type = Root}" \ --destination-arn "arn:aws:logs:region:999999999999:destination:testDestination" \ --role-arn "arn:aws:iam::111111111111:role/CWLtoSubscriptionFilterRole"