Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Memfilter peristiwa data dengan menggunakan pemilih acara lanjutan
Bagian ini menjelaskan cara Anda dapat menggunakan pemilih peristiwa lanjutan untuk membuat pemilih berbutir halus untuk mencatat peristiwa data, yang dapat membantu Anda mengontrol biaya dengan hanya mencatat peristiwa data tertentu yang menarik.
Contoh:
-
Anda dapat menyertakan atau mengecualikan panggilan API tertentu dengan menambahkan filter di
eventNamebidang. -
Anda dapat menyertakan atau mengecualikan logging untuk sumber daya tertentu dengan menambahkan filter pada
resources.ARNbidang. Misalnya, jika Anda mencatat peristiwa data S3, Anda dapat mengecualikan logging untuk bucket S3 untuk jejak Anda. -
Anda dapat memilih untuk mencatat hanya peristiwa tulis saja atau peristiwa baca-saja dengan menambahkan filter pada bidang.
readOnly
Tabel berikut menjelaskan bidang yang didukung untuk memfilter peristiwa data. Untuk daftar bidang yang didukung untuk setiap jenis CloudTrail acara, lihat AdvancedEventSelector di Refer AWS CloudTrail ensi API.
| Bidang | Diperlukan | Operator yang valid | Deskripsi |
|---|---|---|---|
|
|
Ya |
|
Bidang ini diatur |
|
|
Ya |
|
Bidang ini digunakan untuk memilih jenis sumber daya yang ingin Anda catat peristiwa data. Tabel peristiwa Data menunjukkan nilai yang mungkin. |
|
|
Tidak |
|
Ini adalah bidang opsional yang digunakan untuk memasukkan atau mengecualikan peristiwa data berdasarkan |
|
|
Tidak |
|
Ini adalah file opsional yang digunakan untuk menyaring atau memfilter setiap peristiwa data yang dicatat CloudTrail, seperti atau. Jika Anda menggunakan AWS CLI, Anda dapat menentukan beberapa nilai dengan memisahkan setiap nilai dengan koma. Jika Anda menggunakan konsol, Anda dapat menentukan beberapa nilai dengan membuat kondisi untuk setiap nilai yang ingin |
|
|
Tidak |
|
Ini adalah bidang opsional yang digunakan untuk mengecualikan atau menyertakan peristiwa data untuk sumber daya tertentu dengan menyediakan Jika Anda menggunakan AWS CLI, Anda dapat menentukan beberapa nilai dengan memisahkan setiap nilai dengan koma. Jika Anda menggunakan konsol, Anda dapat menentukan beberapa nilai dengan membuat kondisi untuk setiap nilai yang ingin |
|
|
Tidak |
|
Anda dapat menggunakannya untuk memasukkan atau mengecualikan sumber peristiwa tertentu. Biasanya |
|
|
Tidak |
|
EventType untuk disertakan atau dikecualikan. Misalnya, Anda dapat mengatur bidang ini untuk |
|
|
Tidak |
|
Sertakan atau mengecualikan acara yang berasal dari Konsol Manajemen AWS sesi. Bidang ini dapat diatur ke |
|
|
Tidak |
|
Sertakan atau kecualikan peristiwa untuk tindakan yang diambil oleh identitas IAM tertentu. Untuk informasi selengkapnya, lihat elemen CloudTrail userIdentity. |
Untuk mencatat peristiwa data menggunakan CloudTrail konsol, Anda memilih opsi Peristiwa data dan kemudian memilih jenis Sumber daya yang menarik saat Anda membuat atau memperbarui penyimpanan data jejak atau peristiwa. Tabel peristiwa data menunjukkan kemungkinan jenis sumber daya yang dapat Anda pilih di CloudTrail konsol.
Untuk mencatat peristiwa data dengan AWS CLI, konfigurasikan --advanced-event-selector parameter untuk menyet eventCategory el sama dengan Data dan resources.type nilai sama dengan nilai jenis sumber daya yang ingin Anda catat peristiwa datanya. Tabel peristiwa Data mencantumkan jenis sumber daya yang tersedia.
Misalnya, jika Anda ingin mencatat peristiwa data untuk semua kumpulan Identitas Cognito, Anda harus mengonfigurasi --advanced-event-selectors parameter agar terlihat seperti ini:
--advanced-event-selectors '[ { "Name": "Log Cognito data events on Identity pools", "FieldSelectors": [ { "Field": "eventCategory", "Equals": ["Data"] }, { "Field": "resources.type", "Equals": ["AWS::Cognito::IdentityPool"] } ] } ]'
Contoh sebelumnya mencatat semua peristiwa data Cognito di kumpulan Identity. Anda dapat lebih menyempurnakan pemilih acara lanjutan untuk memfiltereventName,readOnly, dan resources.ARN bidang untuk mencatat peristiwa tertentu yang menarik atau mengecualikan peristiwa yang tidak menarik.
Anda dapat mengonfigurasi pemilih acara lanjutan untuk memfilter peristiwa data berdasarkan beberapa bidang. Misalnya, Anda dapat mengonfigurasi pemilih peristiwa lanjutan untuk mencatat semua panggilan Amazon S3 PutObject dan DeleteObject API tetapi mengecualikan pencatatan peristiwa untuk bucket S3 tertentu seperti yang ditunjukkan pada contoh berikut. Ganti amzn-s3-demo-bucket dengan nama bucket Anda.
--advanced-event-selectors '[ { "Name": "Log PutObject and DeleteObject events for all but one bucket", "FieldSelectors": [ { "Field": "eventCategory", "Equals": ["Data"] }, { "Field": "resources.type", "Equals": ["AWS::S3::Object"] }, { "Field": "eventName", "Equals": ["PutObject","DeleteObject"] }, { "Field": "resources.ARN", "NotStartsWith": ["arn:aws:s3:::amzn-s3-demo-bucket/"] } ] } ]'
Anda juga dapat menyertakan beberapa kondisi untuk bidang. Untuk informasi tentang bagaimana beberapa kondisi dievaluasi, lihatBagaimana CloudTrail mengevaluasi beberapa kondisi untuk bidang.
Anda dapat menggunakan pemilih peristiwa lanjutan untuk mencatat peristiwa manajemen dan data. Untuk mencatat peristiwa data untuk beberapa jenis sumber daya, tambahkan pernyataan pemilih bidang untuk setiap jenis sumber daya yang ingin Anda catat peristiwa datanya.
catatan
Jalur dapat menggunakan pemilih acara dasar atau pemilih acara lanjutan, tetapi tidak keduanya. Jika Anda menerapkan pemilih acara lanjutan ke trek, semua pemilih peristiwa dasar yang ada akan diganti.
Selektor tidak mendukung penggunaan wildcard seperti. * Untuk mencocokkan beberapa nilai dengan satu kondisi, Anda dapat menggunakanStartsWith,EndsWith,NotStartsWith, atau NotEndsWith untuk secara eksplisit mencocokkan awal atau akhir bidang acara.
Topik
Bagaimana CloudTrail mengevaluasi beberapa kondisi untuk bidang
Untuk pemilih acara lanjutan CloudTrail , evaluasi beberapa kondisi untuk bidang sebagai berikut:
-
Operator DESELECT adalah DAN bersama-sama. Jika salah satu kondisi operator DESELECT terpenuhi, acara tidak disampaikan. Ini adalah operator DESELECT yang valid untuk pemilih acara lanjutan:
-
NotEndsWith -
NotEquals -
NotStartsWith
-
-
Operator SELECT adalah OR bersama. Ini adalah operator SELECT yang valid untuk pemilih acara lanjutan:
-
EndsWith -
Equals -
StartsWith
-
-
Kombinasi operator SELECT dan DESELECT mengikuti aturan di atas dan kedua kelompok tersebut dan disatukan.
Contoh menunjukkan beberapa kondisi untuk bidang Resources.arn
Contoh pernyataan pemilih peristiwa berikut mengumpulkan peristiwa data untuk jenis AWS::S3::Object sumber daya dan menerapkan beberapa kondisi pada resources.ARN bidang.
{ "Name": "S3Select", "FieldSelectors": [ { "Field": "eventCategory", "Equals": [ "Data" ] }, { "Field": "resources.type", "Equals": [ "AWS::S3::Object" ] }, { "Field": "resources.ARN", "Equals": [ "arn:aws:s3:::amzn-s3-demo-bucket/object1" ], "StartsWith": [ "arn:aws:s3:::amzn-s3-demo-bucket/" ], "EndsWith": [ "object3" ], "NotStartsWith": [ "arn:aws:s3:::amzn-s3-demo-bucket/deselect" ], "NotEndsWith": [ "object5" ], "NotEquals": [ "arn:aws:s3:::amzn-s3-demo-bucket/object6" ] } ] }
Dalam contoh sebelumnya, peristiwa data Amazon S3 untuk AWS::S3::Object sumber daya akan dikirimkan jika:
-
Tak satu pun dari kondisi operator DESELECT ini terpenuhi:
-
resources.ARNbidangNotStartsWithnilainyaarn:aws:s3:::amzn-s3-demo-bucket/deselect -
resources.ARNbidangNotEndsWithnilainyaobject5 -
resources.ARNbidangNotEqualsnilainyaarn:aws:s3:::amzn-s3-demo-bucket/object6
-
-
Setidaknya satu dari kondisi operator SELECT ini terpenuhi:
-
resources.ARNbidangEqualsnilainyaarn:aws:s3:::amzn-s3-demo-bucket/object1 -
resources.ARNbidangStartsWithnilainyaarn:aws:s3:::amzn-s3-demo-bucket/ -
resources.ARNbidangEndsWithnilainyaobject3
-
Berdasarkan logika evaluasi:
-
Peristiwa data untuk
amzn-s3-demo-bucket/object1akan dikirimkan karena cocok dengan nilaiEqualsoperator dan tidak cocok dengan nilai apa pun untukNotEqualsoperatorNotStartsWithNotEndsWith,, dan. -
Peristiwa data untuk
amzn-s3-demo-bucket/object2akan dikirimkan karena cocok dengan nilaiStartsWithoperator dan tidak cocok dengan nilai apa pun untukNotEqualsoperatorNotStartsWithNotEndsWith,, dan. -
Peristiwa data untuk
amzn-s3-demo-bucket1/object3akan dikirimkan karena cocokEndsWithdengan operator dan tidak cocok dengan nilai apa pun untukNotEqualsoperatorNotStartsWithNotEndsWith,, dan. -
Peristiwa data untuk tidak
arn:aws:s3:::amzn-s3-demo-bucket/deselectObject4akan dikirimkan karena cocok dengan kondisi untukNotStartsWithmeskipun cocok dengan kondisi untukStartsWithoperator. -
Peristiwa data untuk tidak
arn:aws:s3:::amzn-s3-demo-bucket/object5akan dikirimkan karena cocok dengan kondisi untukNotEndsWithmeskipun cocok dengan kondisi untukStartsWithoperator. -
Peristiwa data untuk tidak
arn:aws:s3:::amzn-s3-demo-bucket/object6akan dikirimkan karena cocok dengan kondisi untukNotEqualsoperator meskipun cocok dengan kondisi untukStartsWithoperator.
AWS CLI contoh untuk memfilter peristiwa data
Bagian ini memberikan AWS CLI contoh yang menunjukkan cara memfilter peristiwa data pada bidang yang berbeda. Untuk AWS CLI contoh tambahan, lihat Catatan peristiwa data untuk jalur dengan menggunakan pemilih peristiwa lanjutan danPencatatan peristiwa data untuk penyimpanan data peristiwa dengan AWS CLI.
Untuk informasi tentang cara mencatat peristiwa data menggunakan konsol, lihatPencatatan peristiwa data dengan Konsol Manajemen AWS.
Contoh:
Contoh 1: Memfilter pada bidang EventName
Dalam contoh pertama, --advanced-event-selectors for a trail dikonfigurasi untuk mencatat hanya panggilanGetObject,PutObject, dan DeleteObject API untuk objek Amazon S3 dalam bucket tujuan umum.
aws cloudtrail put-event-selectors \ --trail-nametrailName\ --advanced-event-selectors '[ { "Name": "Log GetObject, PutObject and DeleteObject S3 data events", "FieldSelectors": [ { "Field": "eventCategory", "Equals": ["Data"] }, { "Field": "resources.type", "Equals": ["AWS::S3::Object"] }, { "Field": "eventName", "Equals": ["GetObject","PutObject","DeleteObject"] } ] } ]'
Contoh berikutnya membuat penyimpanan data peristiwa baru yang mencatat peristiwa data untuk EBS Direct API tetapi mengecualikan panggilan ListChangedBlocks API. Anda dapat menggunakan update-event-data-store perintah untuk memperbarui penyimpanan data peristiwa yang ada.
aws cloudtrail create-event-data-store \ --name "eventDataStoreName" --advanced-event-selectors '[ { "Name": "Log all EBS Direct API data events except ListChangedBlocks", "FieldSelectors": [ { "Field": "eventCategory", "Equals": ["Data"] }, { "Field": "resources.type", "Equals": ["AWS::EC2::Snapshot"] }, { "Field": "eventName", "NotEquals": ["ListChangedBlocks"] } ] } ]'
Contoh 2: Memfilter pada bidang Resources.arn dan user Identity.arn
Contoh berikut menunjukkan cara menyertakan semua peristiwa data untuk semua objek Amazon S3 dalam bucket S3 tujuan umum tertentu tetapi mengecualikan peristiwa yang dihasilkan oleh bucket-scanner-roleuserIdentity. Nilai untuk peristiwa S3 untuk resources.type bidang adalahAWS::S3::Object. Karena nilai ARN untuk objek S3 dan bucket S3 sedikit berbeda, Anda harus menambahkan StartsWith operator untukresources.ARN.
aws cloudtrail put-event-selectors \ --trail-nametrailName\ --advanced-event-selectors \ '[ { "Name": "S3EventSelector", "FieldSelectors": [ { "Field": "eventCategory", "Equals": ["Data"] }, { "Field": "resources.type", "Equals": ["AWS::S3::Object"] }, { "Field": "resources.ARN", "StartsWith": ["arn:partition:s3:::amzn-s3-demo-bucket/"] }, { "Field": "userIdentity.arn", "NotStartsWith": ["arn:aws:sts::123456789012:assumed-role/bucket-scanner-role"]} ] } ]'
Contoh 3: Memfilter pada bidang resources.type dan eventName untuk mengecualikan objek individual yang dihapus oleh acara Amazon S3 DeleteObjects
resources.type danContoh berikut menunjukkan cara menyertakan semua peristiwa data untuk semua objek Amazon S3 dalam bucket Amazon S3 tujuan umum tertentu tetapi mengecualikan objek individual yang dihapus oleh DeleteObject operasi. Nilai untuk peristiwa S3 untuk resources.type bidang adalahAWS::S3::Object. Nilai untuk nama acara adalahDeleteObject.
aws cloudtrail put-event-selectors \ --trail-nametrailName\ --advanced-event-selectors \ { "Name": "Exclude Events for DeleteObject operation", "FieldSelectors": [ { "Field": "eventCategory", "Equals": [ "Data" ] }, { "Field": "resources.type", "Equals": [ "AWS::S3::Object" ] }, { "Field": "eventName", "NotEquals": [ "DeleteObject" ] } ] }, { "Name": "Exclude DeleteObject Events for individual objects deleted by DeleteObjects Operation", "FieldSelectors": [ { "Field": "eventCategory", "Equals": [ "Data" ] }, { "Field": "resources.type", "Equals": [ "AWS::S3::Object" ] }, { "Field": "eventName", "Equals": [ "DeleteObject" ] }, { "Field": "eventType", "NotEquals": [ "AwsServiceEvent" ] } ] } ] (edited)