Mengumpulkan log Imperva WAF

Didukung di:

Dokumen ini menjelaskan cara mengumpulkan log dari Firewall Aplikasi Web (WAF) Imperva ke Google Security Operations menggunakan API (Tarik) atau Amazon S3 (Dorong). Parser mengubah log dari format SYSLOG+KV, JSON, CEF, dan LEEF menjadi model data terpadu (UDM). Log ini memproses berbagai struktur log, mengekstrak kolom yang relevan, menormalisasinya ke dalam atribut UDM, dan memperkaya data dengan informasi kontekstual untuk analisis keamanan yang lebih baik.

Sebelum memulai

Pastikan Anda memiliki prasyarat berikut:

  • Jenis penyerapan (API atau Amazon S3) yang paling sesuai dengan persyaratan konfigurasi Anda.
  • Instance Google SecOps.
  • Akses istimewa ke AWS.
  • Akses istimewa ke WAF Imperva.

Mengumpulkan log WAF Imperva menggunakan API

Mengonfigurasi pengguna Hanya Baca untuk Imperva WAF

  1. Login ke Konsol Imperva dengan akun istimewa.
  2. Buka Setelan > Pengguna & Peran.
  3. Klik Add User.
  4. Isi kolom wajib diisi:
    • Nama pengguna: masukkan nama pengguna yang unik.
    • Sandi: tetapkan sandi yang kuat.
    • Email: berikan alamat email pengguna.
    • Di bagian Peran, pilih peran Pembaca.
  5. Klik Simpan untuk membuat pengguna dengan akses hanya baca.

Opsional: Mengonfigurasi pengguna Pembaca sebagai Khusus API

  1. Di daftar Pengguna, temukan pengguna yang baru dibuat.
  2. Klik tombol Tindakan (tiga titik) di samping nama pengguna.
  3. Pilih Tetapkan sebagai pengguna khusus API.

Buat ID API dan kunci API

  1. Di daftar Pengguna, pilih pengguna yang baru dibuat.
  2. Pilih Setelan, lalu klik Kunci API.
  3. Klik Tambahkan Kunci API.
  4. Isi kolom wajib diisi:
    • Name: masukkan nama deskriptif untuk kunci API.
    • Opsional: Deskripsi: berikan deskripsi opsional.
    • Dalam daftar Kunci API akan berakhir dalam, pilih Tidak pernah.
    • Untuk mengaktifkan, pilih Status.
  5. Klik Simpan.

Sistem akan menampilkan ID API dan Kunci API. Salin dan simpan kredensial ini, karena tidak akan ditampilkan lagi.

Menyiapkan feed

Ada dua titik entri berbeda untuk menyiapkan feed di platform Google SecOps:

  • Setelan SIEM > Feed
  • Hub Konten > Paket Konten

Menyiapkan feed dari Setelan SIEM > Feed

Untuk mengonfigurasi feed, ikuti langkah-langkah berikut:

  1. Buka Setelan SIEM > Feed.
  2. Klik Tambahkan Feed Baru.
  3. Di halaman berikutnya, klik Konfigurasi satu feed.
  4. Di kolom Feed name, masukkan nama untuk feed; misalnya, Imperva Incapsula WAF Logs.
  5. Pilih Third party API sebagai Source type.
  6. Pilih Imperva sebagai Jenis log.
  7. Klik Berikutnya.
  8. Tentukan nilai untuk parameter input berikut:
    • Header HTTP autentikasi: masukkan ID dan Kunci API Imperva dalam dua baris: apiId:<YOUR_API_ID> dan apiKey:<YOUR_API_KEY>.
  9. Klik Berikutnya.
  10. Tinjau konfigurasi feed di layar Selesaikan, lalu klik Kirim.

Menyiapkan feed dari Hub Konten

Tentukan nilai untuk kolom berikut:

  • Header HTTP autentikasi: masukkan ID dan Kunci API Imperva dalam dua baris: apiId:<YOUR_API_ID> dan apiKey:<YOUR_API_KEY>.

Opsi lanjutan

  • Nama Feed: Nilai yang telah diisi otomatis yang mengidentifikasi feed.
  • Jenis Sumber: Metode yang digunakan untuk mengumpulkan log ke Google SecOps.
  • Namespace Aset: Namespace yang terkait dengan feed.
  • Label Penyerapan: Label yang diterapkan ke semua peristiwa dari feed ini.

Mengumpulkan log WAF Imperva menggunakan Amazon S3

Mengonfigurasi AWS IAM dan S3

  1. Buat bucket Amazon S3 dengan mengikuti panduan pengguna ini: Membuat bucket
  2. Simpan Nama dan Region bucket untuk digunakan nanti.
  3. Buat Pengguna dengan mengikuti panduan pengguna ini: Membuat pengguna IAM.
  4. Pilih Pengguna yang dibuat.
  5. Pilih tab Kredensial keamanan.
  6. Klik Create Access Key di bagian Access Keys.
  7. Pilih Layanan pihak ketiga sebagai Kasus penggunaan.
  8. Klik Berikutnya.
  9. Opsional: Tambahkan tag deskripsi.
  10. Klik Create access key.
  11. Klik Download file .csv, lalu simpan Kunci Akses dan Kunci Akses Rahasia untuk digunakan nanti.
  12. Klik Selesai.
  13. Pilih tab Izin.
  14. Klik Tambahkan izin di bagian Kebijakan izin.
  15. Pilih Tambahkan izin.
  16. Pilih Lampirkan kebijakan secara langsung.
  17. Telusuri dan pilih kebijakan AmazonS3FullAccess.
  18. Klik Berikutnya.
  19. Klik Tambahkan izin.

Mengonfigurasi koneksi Amazon S3 Imperva WAF

  1. Login ke Konsol Imperva dengan akun istimewa.
  2. Buka Log > Penyiapan Log.
  3. Pilih Amazon S3.
  4. Isi kolom wajib diisi:
    • Kunci akses
    • Kunci rahasia
    • Jalur: masukkan jalur dalam format berikut: <Amazon S3 bucket name>/<log folder>; misalnya: MyBucket/MyIncapsulaLogFolder.
  5. Klik Uji koneksi untuk melakukan siklus pengujian penuh yang mentransfer file pengujian ke folder yang Anda tentukan.
  6. Pilih format file log sebagai CEF.
  7. Secara default, file log dikompresi. Tetapkan opsi agar tidak mengompresi file.

Mengonfigurasi feed di Google SecOps untuk menyerap log WAF Imperva dari Amazon S3

  1. Buka Setelan SIEM > Feed.
  2. Klik Tambahkan baru.
  3. Di kolom Nama feed, masukkan nama untuk feed; misalnya, Imperva WAF Logs.
  4. Pilih Amazon S3 sebagai Jenis sumber.
  5. Pilih Imperva sebagai Jenis log.
  6. Klik Berikutnya.
  7. Tentukan nilai untuk parameter input berikut:

    • Region: region tempat bucket Amazon S3 berada.
    • URI S3: URI bucket.
      • s3://your-log-bucket-name/
      • Ganti your-log-bucket-name dengan nama bucket yang sebenarnya.
    • URI adalah: pilih Direktori atau Direktori yang menyertakan subdirektori.
    • Opsi penghapusan sumber: pilih opsi penghapusan sesuai preferensi Anda.
    • ID Kunci Akses: Kunci akses pengguna dengan akses ke bucket S3.
    • Kunci Akses Rahasia: kunci rahasia Pengguna dengan akses ke bucket S3.
    • Namespace aset: namespace aset.
    • Label penyerapan: label yang akan diterapkan ke peristiwa dari feed ini.
  8. Klik Berikutnya.

  9. Tinjau konfigurasi feed baru Anda di layar Selesaikan, lalu klik Kirim.

Tabel Pemetaan UDM

Kolom log Pemetaan UDM Logika
account_id target.user.userid ID akun dari objek json
bertindak security_result.action Jika act adalah allowed, alert, dimulai dengan REQ_PASSED, atau dimulai dengan REQ_CACHED, tetapkan ke ALLOW. Jika act adalah deny, blocked, dimulai dengan REQ_BLOCKED, atau dimulai dengan REQ_CHALLENGE, tetapkan ke BLOCK. Jika act cocok dengan regex (?i)REQ_BAD, tetapkan ke FAIL. Jika tidak, setel ke UNKNOWN_ACTION.
aplikasi network.application_protocol Diganti namanya dari kv.app. Dikonversi menjadi huruf besar.
calCountryOrRegion principal.location.country_or_region Diganti namanya dari calCountryOrRegion.
kucing security_result.action_details Jika cat dimulai dengan REQ_PASSED atau REQ_CACHED, tetapkan action ke ALLOW dan tetapkan action_details ke deskripsi berdasarkan nilai cat. Jika cat dimulai dengan REQ_BAD, tetapkan action ke FAIL dan tetapkan action_details ke deskripsi berdasarkan nilai cat. Jika cat dimulai dengan REQ_BLOCKED atau REQ_CHALLENGE, tetapkan action ke BLOCK dan tetapkan action_details ke deskripsi berdasarkan nilai cat.
cicode principal.location.city Diganti namanya dari cicode.
classified_client security_result.detection_fields Jika classified_client tidak kosong, buat entri detection_fields baru dengan kunci classified_client dan nilai classified_client.
client.domain principal.hostname, principal.asset.hostname Diganti namanya dari client.domain.
client.geo.country_iso_code principal.location.country_or_region Diganti namanya dari client.geo.country_iso_code.
client.ip principal.ip, principal.asset.ip Digabungkan ke principal.ip dan principal.asset.ip.
cn1 network.http.response_code Diganti namanya dari cn1. Dikonversi ke bilangan bulat.
context_key target.resource.name Diganti namanya dari context_key.
country principal.location.country_or_region Diganti namanya dari country.
credentials_leaked security_result.detection_fields Dikonversi ke string. Jika tidak kosong, buat entri detection_fields baru dengan kunci credentials_leaked dan nilai credentials_leaked.
cs1 security_result.detection_fields Jika cs1 tidak kosong, NA, atau `, create a newdetection_fieldsentry with keycs1Labeland valuecs1`.
cs1Label security_result.detection_fields Digunakan sebagai kunci untuk entri detection_fields yang dibuat dari cs1.
cs2 security_result.detection_fields Jika cs2 tidak kosong, buat entri detection_fields baru dengan kunci cs2Label dan nilai cs2.
cs2Label security_result.detection_fields Digunakan sebagai kunci untuk entri detection_fields yang dibuat dari cs2.
cs3 security_result.detection_fields Jika cs3 tidak kosong, -, atau `, create a newdetection_fieldsentry with keycs3Labeland valuecs3`.
cs3Label security_result.detection_fields Digunakan sebagai kunci untuk entri detection_fields yang dibuat dari cs3.
cs4 security_result.detection_fields Jika cs4 tidak kosong, buat entri detection_fields baru dengan kunci cs4Label dan nilai cs4.
cs4Label security_result.detection_fields Digunakan sebagai kunci untuk entri detection_fields yang dibuat dari cs4.
cs5 security_result.detection_fields Jika cs5 tidak kosong, buat entri detection_fields baru dengan kunci cs5Label dan nilai cs5.
cs5Label security_result.detection_fields Digunakan sebagai kunci untuk entri detection_fields yang dibuat dari cs5.
cs6 principal.application Diganti namanya dari cs6.
cs7 principal.location.region_latitude Jika cs7Label adalah latitude, ganti namanya menjadi principal.location.region_latitude. Dikonversi menjadi float.
cs7Label Jika cs7Label adalah latitude, digunakan untuk menentukan pemetaan cs7.
cs8 principal.location.region_longitude Jika cs8Label adalah longitude, ganti namanya menjadi principal.location.region_longitude. Dikonversi menjadi float.
cs8Label Jika cs8Label adalah longitude, digunakan untuk menentukan pemetaan cs8.
cs9 security_result.rule_name, extensions.vulns.vulnerabilities.name Jika cs9 tidak kosong, tetapkan ke security_result.rule_name dan buat entri vulnerabilities baru dengan nama cs9.
Pelanggan target.user.user_display_name Diganti namanya dari Customer.
declared_client security_result.detection_fields Jika declared_client tidak kosong, buat entri detection_fields baru dengan kunci declared_client dan nilai declared_client.
deskripsi security_result.threat_name Diganti namanya dari description.
deviceExternalId network.community_id Diganti namanya dari deviceExternalId.
deviceReceiptTime metadata.event_timestamp Diuraikan sebagai tanggal dan ditetapkan ke metadata.event_timestamp. Jika kosong, log_timestamp atau kv.start akan digunakan sebagai gantinya.
dhost target.hostname Diganti namanya dari kv.dhost.
dproc security_result.category_details Diganti namanya dari dproc.
dpt target.port Diganti namanya dari kv.dpt. Dikonversi ke bilangan bulat.
dst target.ip, target.asset.ip Jika dst tidak kosong, gabungkan ke target.ip dan target.asset.ip.
dstPort target.port Diganti namanya dari dstPort. Dikonversi ke bilangan bulat.
duser target.user.userid Jika duser tidak cocok dengan regex .*?Alert.* dan tidak kosong, diganti namanya menjadi target.user.userid.
selesai security_result.detection_fields Jika end tidak kosong, buat entri detection_fields baru dengan kunci event_end_time dan nilai end.
event.id ID acara dari objek JSON
event.provider principal.user.user_display_name Diganti namanya dari event.provider.
failed_logins_last_24h security_result.detection_fields Dikonversi ke string. Jika tidak kosong, buat entri detection_fields baru dengan kunci failed_logins_last_24h dan nilai failed_logins_last_24h.
fileId network.session_id Diganti namanya dari fileId.
filePermission security_result.detection_fields Jika filePermission tidak kosong, buat entri detection_fields baru dengan kunci filePermission dan nilai filePermission.
fileType security_result.detection_fields Jika fileType tidak kosong, buat entri detection_fields baru dengan kunci fileType dan nilai fileType.
sidik jari security_result.detection_fields Jika fingerprint tidak kosong, buat entri detection_fields baru dengan kunci log_imperva_fingerprint dan nilai fingerprint.
flexString1 network.http.response_code Diganti namanya dari kv.flexString1. Dikonversi ke bilangan bulat.
http.request.body.bytes network.sent_bytes Dikonversi menjadi bilangan bulat yang tidak bertanda tangan. Diganti namanya dari http.request.body.bytes.
http.request.method network.http.method Diganti namanya dari http.request.method.
imperva.abp.apollo_rule_versions security_result.detection_fields Untuk setiap entri di imperva.abp.apollo_rule_versions, buat entri detection_fields baru dengan kunci apollo_rule_versions_{index} dan nilai yang sama dengan entri.
imperva.abp.bot_behaviors security_result.detection_fields Untuk setiap entri di imperva.abp.bot_behaviors, buat entri detection_fields baru dengan kunci bot_behaviors_{index} dan nilai yang sama dengan entri.
imperva.abp.bot_deciding_condition_ids security_result.detection_fields Untuk setiap entri di imperva.abp.bot_deciding_condition_ids, buat entri detection_fields baru dengan kunci bot_deciding_condition_ids_{index} dan nilai yang sama dengan entri.
imperva.abp.bot_deciding_condition_names security_result.detection_fields Untuk setiap entri di imperva.abp.bot_deciding_condition_names, buat entri detection_fields baru dengan kunci bot_deciding_condition_names_{index} dan nilai yang sama dengan entri.
imperva.abp.bot_triggered_condition_ids security_result.detection_fields Untuk setiap entri di imperva.abp.bot_triggered_condition_ids, buat entri detection_fields baru dengan kunci bot_triggered_condition_ids_{index} dan nilai yang sama dengan entri.
imperva.abp.bot_triggered_condition_names security_result.detection_fields Untuk setiap entri di imperva.abp.bot_triggered_condition_names, buat entri detection_fields baru dengan kunci bot_triggered_condition_names_{index} dan nilai yang sama dengan entri.
imperva.abp.bot_violations security_result.detection_fields Untuk setiap entri di imperva.abp.bot_violations, buat entri detection_fields baru dengan kunci bot_violations_{index} dan nilai yang sama dengan entri.
imperva.abp.customer_request_id network.session_id Diganti namanya dari imperva.abp.customer_request_id.
imperva.abp.headers_accept_encoding security_result.detection_fields Jika imperva.abp.headers_accept_encoding tidak kosong, buat entri detection_fields baru dengan kunci Accept Encoding dan nilai imperva.abp.headers_accept_encoding.
imperva.abp.headers_accept_language security_result.detection_fields Jika imperva.abp.headers_accept_language tidak kosong, buat entri detection_fields baru dengan kunci Accept Language dan nilai imperva.abp.headers_accept_language.
imperva.abp.headers_connection security_result.detection_fields Jika imperva.abp.headers_connection tidak kosong, buat entri detection_fields baru dengan kunci headers_connection dan nilai imperva.abp.headers_connection.
imperva.abp.headers_referer network.http.referral_url Diganti namanya dari imperva.abp.headers_referer.
imperva.abp.hsig security_result.detection_fields Jika imperva.abp.hsig tidak kosong, buat entri detection_fields baru dengan kunci hsig dan nilai imperva.abp.hsig.
imperva.abp.monitor_action security_result.action, security_result.severity Jika imperva.abp.monitor_action cocok dengan ekspresi reguler (?i)allow, tetapkan security_action ke ALLOW dan severity ke INFORMATIONAL. Jika imperva.abp.monitor_action cocok dengan regex (?i)captcha atau (?i)block, tetapkan security_action ke BLOCK.
imperva.abp.pid principal.process.pid Diganti namanya dari imperva.abp.pid.
imperva.abp.policy_id security_result.detection_fields Jika imperva.abp.policy_id tidak kosong, buat entri detection_fields baru dengan kunci Policy Id dan nilai imperva.abp.policy_id.
imperva.abp.policy_name security_result.detection_fields Jika imperva.abp.policy_name tidak kosong, buat entri detection_fields baru dengan kunci Policy Name dan nilai imperva.abp.policy_name.
imperva.abp.random_id additional.fields Jika imperva.abp.random_id tidak kosong, buat entri additional.fields baru dengan kunci Random Id dan nilai imperva.abp.random_id.
imperva.abp.request_type principal.labels Jika imperva.abp.request_type tidak kosong, buat entri principal.labels baru dengan kunci request_type dan nilai imperva.abp.request_type.
imperva.abp.selector security_result.detection_fields Jika imperva.abp.selector tidak kosong, buat entri detection_fields baru dengan kunci selector dan nilai imperva.abp.selector.
imperva.abp.selector_derived_id security_result.detection_fields Jika imperva.abp.selector_derived_id tidak kosong, buat entri detection_fields baru dengan kunci selector_derived_id dan nilai imperva.abp.selector_derived_id.
imperva.abp.tls_fingerprint security_result.description Diganti namanya dari imperva.abp.tls_fingerprint.
imperva.abp.token_id target.resource.product_object_id Diganti namanya dari imperva.abp.token_id.
imperva.abp.zuid additional.fields Jika imperva.abp.zuid tidak kosong, buat entri additional.fields baru dengan kunci zuid dan nilai imperva.abp.zuid.
imperva.additional_factors additional.fields Untuk setiap entri di imperva.additional_factors, buat entri additional.fields baru dengan kunci additional_factors_{index} dan nilai yang sama dengan entri.
imperva.audit_trail.event_action security_result.detection_fields Jika imperva.audit_trail.event_action tidak kosong, buat entri detection_fields baru dengan kunci imperva.audit_trail.event_action dan nilai imperva.audit_trail.event_action_description.
imperva.audit_trail.event_action_description security_result.detection_fields Digunakan sebagai nilai untuk entri detection_fields yang dibuat dari imperva.audit_trail.event_action.
imperva.audit_trail.event_context security_result.detection_fields Jika imperva.audit_trail.event_context tidak kosong, buat entri detection_fields baru dengan kunci imperva.audit_trail.event_context dan nilai imperva.audit_trail.event_context_description.
imperva.audit_trail.event_context_description security_result.detection_fields Digunakan sebagai nilai untuk entri detection_fields yang dibuat dari imperva.audit_trail.event_context.
imperva.country principal.location.country_or_region Diganti namanya dari imperva.country.
imperva.declared_client security_result.detection_fields Jika imperva.declared_client tidak kosong, buat entri detection_fields baru dengan kunci declared_client dan nilai imperva.declared_client.
imperva.device_reputation additional.fields Untuk setiap entri di imperva.device_reputation, buat entri additional.fields baru dengan kunci device_reputation dan nilai daftar yang berisi entri.
imperva.domain_risk security_result.detection_fields Jika imperva.domain_risk tidak kosong, buat entri detection_fields baru dengan kunci domain_risk dan nilai imperva.domain_risk.
imperva.failed_logins_last_24h security_result.detection_fields Dikonversi ke string. Jika tidak kosong, buat entri detection_fields baru dengan kunci failed_logins_last_24h dan nilai failed_logins_last_24h.
imperva.fingerprint security_result.detection_fields Jika imperva.fingerprint tidak kosong, buat entri detection_fields baru dengan kunci log_imperva_fingerprint dan nilai imperva.fingerprint.
imperva.ids.account_id metadata.product_log_id Diganti namanya dari imperva.ids.account_id.
imperva.ids.account_name metadata.product_event_type Diganti namanya dari imperva.ids.account_name.
imperva.ids.site_id additional.fields Jika imperva.ids.site_id tidak kosong, buat entri additional.fields baru dengan kunci site_id dan nilai imperva.ids.site_id.
imperva.ids.site_name additional.fields Jika imperva.ids.site_name tidak kosong, buat entri additional.fields baru dengan kunci site_name dan nilai imperva.ids.site_name.
imperva.referrer network.http.referral_url Diganti namanya dari imperva.referrer.
imperva.request_session_id network.session_id Diganti namanya dari imperva.request_session_id.
imperva.request_user security_result.detection_fields Jika imperva.request_user tidak kosong, buat entri detection_fields baru dengan kunci request_user dan nilai imperva.request_user.
imperva.risk_level security_result.severity_details Diganti namanya dari imperva.risk_level.
imperva.risk_reason security_result.description Diganti namanya dari imperva.risk_reason.
imperva.significant_domain_name security_result.detection_fields Jika imperva.significant_domain_name tidak kosong, buat entri detection_fields baru dengan kunci significant_domain_name dan nilai imperva.significant_domain_name.
imperva.violated_directives security_result.detection_fields Untuk setiap entri di imperva.violated_directives, buat entri detection_fields baru dengan kunci violated_directives dan nilai yang sama dengan entri.
in network.received_bytes Diganti namanya dari in. Dikonversi menjadi bilangan bulat yang tidak bertanda tangan.
log_timestamp metadata.event_timestamp Jika deviceReceiptTime kosong dan kv.start kosong, tetapkan ke metadata.event_timestamp.
pesan metadata.description Jika message tidak kosong dan event.provider, imperva.ids.account_name, dan client.ip semuanya kosong, tetapkan ke metadata.description.
postbody security_result.detection_fields Jika postbody tidak kosong, buat entri detection_fields baru dengan kunci post_body_info dan nilai postbody.
proto network.application_protocol Diganti namanya dari proto.
protoVer network.tls.version, network.tls.cipher Jika protoVer tidak kosong, akan diuraikan untuk mengekstrak tls_version dan tls_cipher, yang kemudian diganti namanya menjadi network.tls.version dan network.tls.cipher.
permintaan target.url Diganti namanya dari kv.request.
requestClientApplication network.http.user_agent Diganti namanya dari requestClientApplication.
requestMethod network.http.method Diganti namanya dari requestMethod. Dikonversi menjadi huruf besar.
resource_id target.resource.id Diganti namanya dari resource_id.
resource_type_key target.resource.type Diganti namanya dari resource_type_key.
rt metadata.event_timestamp Diuraikan untuk mengekstrak deviceReceiptTime, yang kemudian diuraikan sebagai tanggal dan ditetapkan ke metadata.event_timestamp.
security_result.action security_result.action Digabungkan dengan nilai kolom _action.
security_result.severity security_result.severity Jika sevs adalah error atau warning, tetapkan ke HIGH. Jika sevs adalah critical, tetapkan ke CRITICAL. Jika sevs adalah medium atau notice, tetapkan ke MEDIUM. Jika sevs adalah information atau info, tetapkan ke LOW.
server.domain target.hostname, target.asset.hostname Diganti namanya dari server.domain.
server.geo.name target.location.name Diganti namanya dari server.geo.name.
tingkat keseriusan, security_result.threat_id Diganti namanya dari severity.
siteid security_result.detection_fields Jika siteid tidak kosong, buat entri detection_fields baru dengan kunci siteid dan nilai siteid.
sourceServiceName target.hostname Diganti namanya dari kv.sourceServiceName.
spt principal.port Diganti namanya dari kv.spt. Dikonversi ke bilangan bulat.
src principal.ip, principal.asset.ip Jika src tidak kosong, gabungkan ke principal.ip dan principal.asset.ip.
srcPort principal.port Diganti namanya dari srcPort. Dikonversi ke bilangan bulat.
mulai security_result.detection_fields, metadata.event_timestamp Jika start tidak kosong, buat entri detection_fields baru dengan kunci event_start_time dan nilai start. Juga diuraikan sebagai tanggal dan ditetapkan ke metadata.event_timestamp jika deviceReceiptTime kosong.
successful_logins_last_24h security_result.detection_fields Dikonversi ke string. Jika tidak kosong, buat entri detection_fields baru dengan kunci successful_logins_last_24h dan nilai successful_logins_last_24h.
suid target.user.userid Diganti namanya dari suid.
waktu metadata.event_timestamp Dikonversi ke string. Diuraikan sebagai tanggal dan ditetapkan ke metadata.event_timestamp.
type_key metadata.product_event_type Diganti namanya dari type_key.
url target.process.file.full_path Jika url.path tidak kosong atau /, tetapkan ke target.process.file.full_path.
url target.url Diganti namanya dari url. Jika qstr tidak kosong, ditambahkan ke url dengan pemisah ?.
user.email principal.user.email_addresses Jika user.email tidak kosong dan cocok dengan ekspresi reguler ^.+@.+$, digabungkan ke dalam principal.user.email_addresses.
user_agent network.http.user_agent Diganti namanya dari user_agent.
user_agent.original network.http.parsed_user_agent Jika user_agent.original tidak kosong atau *, dikonversi menjadi parseduseragent dan diganti namanya menjadi network.http.parsed_user_agent.
user_details principal.user.email_addresses Jika user_details tidak kosong dan cocok dengan ekspresi reguler ^.+@.+$, digabungkan ke dalam principal.user.email_addresses.
user_id principal.user.userid Diganti namanya dari user_id.
ver network.tls.version, network.tls.cipher Jika ver tidak kosong, akan diuraikan untuk mengekstrak tls_version dan tls_cipher, yang kemudian diganti namanya menjadi network.tls.version dan network.tls.cipher.
xff intermediary.ip, intermediary.asset.ip, intermediary.hostname, intermediary.asset.hostname Jika xff tidak kosong, diproses untuk mengekstrak alamat IP dan nama host. Alamat IP digabungkan ke intermediary.ip dan intermediary.asset.ip. Nama host ditetapkan ke intermediary.hostname dan intermediary.asset.hostname.

Perlu bantuan lain? Dapatkan jawaban dari anggota Komunitas dan profesional Google SecOps.