Langkah 1: Perbarui filter langganan - CloudWatch Log Amazon

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 dalamMengaktifkan logging dariAWS layanan tertentu. Jika Anda tidak bekerja dengan log yang dibuat oleh salah satu grup log ini, Anda dapat melompat ke Langkah 2: Memperbarui kebijakan akses tujuan yang ada.

Dalam kasus tertentu, Anda harus memperbarui filter langganan di semua akun pengirim yang mengirim log ke akun tujuan. Pemutakhiran menambahkan peran IAM, 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 dan222222222222 sudah memiliki filter langganan 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 agar mulai menggunakan ID organisasi untuk izin log lintas akun
  1. Buat kebijakan kepercayaan berikut dalam sebuah file~/TrustPolicyForCWL.json. Gunakan editor teks untuk membuat file kebijakan ini; jangan menggunakan konsol IAM.

    { "Statement": { "Effect": "Allow", "Principal": { "Service": "logs.amazonaws.com" }, "Action": "sts:AssumeRole" } }
  2. Buat peran IAM yang menggunakan kebijakan ini. Catat nilaiArnArn nilai yang dikembalikan oleh perintah, Anda akan membutuhkannya nanti dalam prosedur ini. Dalam contoh ini, kami menggunakanCWLtoSubscriptionFilterRole nama role yang kami buat.

    aws iam create-role \ --role-name CWLtoSubscriptionFilterRole \ --assume-role-policy-document file://~/TrustPolicyForCWL.json
  3. Buat kebijakan izin untuk menentukan tindakan yang dapat dilakukan oleh CloudWatch Logs di akun Anda.

    1. 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:*" } ] }
    2. Masukkan perintah berikut untuk mengaitkan kebijakan izin yang baru saja Anda buat dengan peran yang Anda buat pada langkah 2.

      aws iam put-role-policy --role-name CWLtoSubscriptionFilterRole --policy-name Permissions-Policy-For-CWL-Subscription-filter --policy-document file://~/PermissionsForCWLSubscriptionFilter.json
  4. 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"