Mengumpulkan log Akses Aplikasi Kustom

Versi Parser: 1.0

Didukung di:

Dokumen ini menjelaskan cara menyerap log Akses Aplikasi Kustom ke Google Security Operations menggunakan metode penyerapan streaming atau penyimpanan cloud.

Log akses aplikasi kustom mencatat peristiwa autentikasi, keputusan otorisasi, dan pola akses dari aplikasi eksklusif atau yang dibuat khusus. Log ini penting untuk memantau aktivitas pengguna, mendeteksi upaya akses yang tidak sah, dan menjaga kepatuhan terhadap kebijakan keamanan.

Sebelum memulai

Pastikan Anda memiliki prasyarat berikut:

  • Instance Google SecOps
  • Log akses aplikasi kustom dalam format JSON, CSV, atau teks terstruktur
  • Akses ke salah satu hal berikut:
    • Bucket Google Cloud Storage (untuk penyerapan GCS)
    • Bucket Amazon S3 (untuk penyerapan S3)
    • Akun Microsoft Azure Storage (untuk penyerapan Azure Blob)
    • Kemampuan endpoint webhook (untuk penyerapan berbasis push)
    • Amazon Kinesis Data Firehose (untuk penyerapan streaming)

Buat jenis log kustom

Jenis log CUSTOM_APPLICATION_ACCESS tidak ada sebagai parser bawaan di Google SecOps. Anda harus membuat jenis log kustom sebelum menyerap log.

  1. Buka Settings > Data Management > Available Log Types. Jika Anda menggunakan platform khusus SIEM, buka Settings > Available Log Types.
  2. Klik Request a Log Type.
  3. Di bagian Create a custom log type on your own, masukkan detail berikut:
    • Vendor/Product: Masukkan Custom Application Access Logs
    • Log Type: Masukkan CUSTOM_APPLICATION_ACCESS
  4. Klik Create Log Type.

  5. Tunggu 10 menit untuk memastikan jenis log baru tersedia di semua komponen sebelum membuat feed.

Memilih metode penyerapan

Pilih metode penyerapan yang paling sesuai dengan infrastruktur Anda:

  • Google Cloud Storage (GCS): Gunakan jika aplikasi Anda menulis log ke bucket GCS atau Anda dapat mengekspor log ke GCS
  • Amazon S3: Gunakan jika aplikasi Anda menulis log ke bucket S3 atau Anda dapat mengekspor log ke S3
  • Azure Blob Storage: Gunakan jika aplikasi Anda menulis log ke Azure Storage atau Anda dapat mengekspor log ke Azure
  • Webhook: Gunakan jika aplikasi Anda dapat mengirim permintaan POST HTTP ke endpoint eksternal
  • Amazon Kinesis Data Firehose: Gunakan jika aplikasi Anda menulis ke CloudWatch Logs atau Anda memerlukan streaming real-time

Opsi 1: Menyerap dari Google Cloud Storage

Membuat bucket Google Cloud Storage

  1. Buka Konsol Google Cloud.
  2. Pilih project Anda atau buat project baru.
  3. Di menu navigasi, buka Cloud Storage > Buckets.
  4. Klik Create bucket.
  5. Berikan detail konfigurasi berikut:

    Setelan Nilai
    Memberi nama bucket Anda Masukkan nama yang unik secara global (misalnya, custom-app-access-logs)
    Location type Pilih sesuai kebutuhan Anda (Region, Dual-region, Multi-region)
    Location Pilih lokasi (misalnya, us-central1)
    Storage class Standard (direkomendasikan untuk log yang sering diakses)
    Kontrol akses Seragam (direkomendasikan)
    Alat perlindungan Opsional: Mengaktifkan pembuatan versi objek atau kebijakan retensi
  6. Klik Create.

Mengonfigurasi aplikasi Anda untuk menulis log ke GCS

Konfigurasikan aplikasi kustom Anda untuk menulis log akses ke bucket GCS yang Anda buat. Log harus ditulis dalam salah satu format berikut:

  • Format JSON (direkomendasikan):

    {"timestamp": "2025-01-15T10:30:00Z", "user": "john.doe@example.com", "action": "login", "result": "success", "source_ip": "203.0.113.45", "application": "custom-app", "resource": "/api/users"}
    
  • Format CSV:

    timestamp,user,action,result,source_ip,application,resource
    2025-01-15T10:30:00Z,john.doe@example.com,login,success,203.0.113.45,custom-app,/api/users
    
  • Newline-delimited JSON (NDJSON):

    {"timestamp": "2025-01-15T10:30:00Z", "user": "john.doe@example.com", "action": "login", "result": "success"}
    {"timestamp": "2025-01-15T10:30:05Z", "user": "jane.smith@example.com", "action": "access", "result": "denied"}
    

Mengambil akun layanan Google SecOps

Google SecOps menggunakan akun layanan unik untuk membaca data dari bucket GCS Anda. Anda harus memberi akun layanan ini akses ke bucket Anda.

  1. Buka Setelan > Pengelolaan Data > Feed. Jika Anda menggunakan platform khusus SIEM, buka Settings > Feeds.
  2. Klik Tambahkan Feed Berita Baru.
  3. Klik Konfigurasi satu feed.
  4. Di kolom Nama feed, masukkan nama untuk feed (misalnya, Custom Application Access Logs - GCS).
  5. Pilih Google Cloud Storage V2 sebagai Source type.
  6. Pilih CUSTOM_APPLICATION_ACCESS_CUSTOM sebagai Log type.
  7. Klik Get Service Account.
  8. Email akun layanan yang unik akan ditampilkan, misalnya:

    chronicle-12345678@chronicle-gcp-prod.iam.gserviceaccount.com
    
  9. Salin alamat email ini untuk digunakan di langkah berikutnya.

Memberikan izin IAM ke akun layanan Google SecOps

Akun layanan Google SecOps memerlukan peran Storage Object Viewer di bucket GCS Anda.

  1. Buka Cloud Storage > Buckets.
  2. Klik nama bucket Anda.
  3. Buka tab Izin.
  4. Klik Grant access.
  5. Berikan detail konfigurasi berikut:
    • Add principals: Tempel email akun layanan Google SecOps
    • Assign roles: Pilih Storage Object Viewer
  6. Klik Simpan.

Mengonfigurasi feed di Google SecOps

  1. Kembali ke halaman pembuatan feed (atau buka Setelan > Pengelolaan Data > Feed > Tambahkan Feed Baru).
  2. Klik Berikutnya.
  3. Tentukan nilai untuk parameter input berikut:

    • Storage bucket URL: Masukkan URI bucket GCS dengan jalur awalan:

      gs://custom-app-access-logs/
      
    • Opsi penghapusan sumber: Pilih opsi penghapusan sesuai preferensi Anda:

      • Never: Tidak pernah menghapus file apa pun setelah transfer (direkomendasikan untuk pengujian).
      • Delete transferred files: Menghapus file setelah transfer berhasil.
      • Delete transferred files and empty directories: Menghapus file dan direktori kosong setelah transfer berhasil.
    • Usia File Maksimum: Sertakan file yang diubah dalam jumlah hari terakhir (defaultnya adalah 180 hari).

    • Namespace aset: Namespace aset.

    • Label penyerapan: Label yang akan diterapkan ke peristiwa dari feed ini (misalnya, custom_app_access).

  4. Klik Berikutnya.

  5. Tinjau konfigurasi feed berita baru Anda di layar Finalize, lalu klik Submit.

Opsi 2: Menyerap dari Amazon S3

Membuat bucket Amazon S3

  1. Buka konsol Amazon S3.
  2. Klik Create Bucket.
  3. Berikan detail konfigurasi berikut:
    • Bucket Name: Masukkan nama yang bermakna untuk bucket (misalnya, custom-app-access-logs).
    • Region: Pilih Region tempat aplikasi Anda berjalan (misalnya, us-east-1).
  4. Klik Create.

Membuat pengguna IAM dengan akses S3

  1. Buka IAM console.
  2. Klik Pengguna > Tambahkan pengguna.
  3. Masukkan nama pengguna (misalnya, chronicle-s3-reader).
  4. Pilih Akses terprogram.
  5. Klik Berikutnya: Izin.
  6. Pilih Attach existing policies directly.
  7. Telusuri dan pilih kebijakan AmazonS3FullAccess.
  8. Klik Berikutnya: Tanda.
  9. Klik Berikutnya: Tinjau.
  10. Klik Create user.
  11. Klik Download .csv file untuk menyimpan Access Key dan Secret Access Key untuk referensi di masa mendatang.
  12. Klik Close.

Mengonfigurasi aplikasi Anda untuk menulis log ke S3

Konfigurasikan aplikasi kustom Anda untuk menulis log akses ke bucket S3 yang Anda buat. Gunakan format log yang sama seperti yang dijelaskan di bagian GCS (JSON, CSV, atau NDJSON).

Mengonfigurasi feed di Google SecOps untuk menyerap log dari S3

  1. Buka Setelan > Pengelolaan Data > Feed. Jika Anda menggunakan platform khusus SIEM, buka Settings > Feeds.
  2. Klik Tambahkan Feed Berita Baru.
  3. Klik Konfigurasi satu feed.
  4. Di kolom Nama feed, masukkan nama untuk feed (misalnya, Custom Application Access Logs - S3).
  5. Pilih Amazon S3 V2 sebagai Jenis sumber.
  6. Pilih CUSTOM_APPLICATION_ACCESS_CUSTOM sebagai Log type.
  7. Klik Berikutnya, lalu klik Kirim.
  8. Tentukan nilai untuk parameter input berikut:

    • S3 URI: Masukkan URI bucket dalam format:

      s3://custom-app-access-logs/
      
    • Opsi penghapusan sumber: Pilih opsi penghapusan sesuai preferensi Anda.

    • Usia File Maksimum: Sertakan file yang diubah dalam jumlah hari terakhir (defaultnya adalah 180 hari).

    • Access Key ID: Kunci akses pengguna dengan akses ke bucket S3.

    • Secret Access Key: Kunci rahasia pengguna dengan akses ke bucket S3.

    • Namespace aset: Namespace aset.

    • Label penyerapan: Label yang akan diterapkan ke peristiwa dari feed ini (misalnya, custom_app_access).

  9. Klik Berikutnya, lalu klik Kirim.

Opsi 3: Menyerap dari Azure Blob Storage

Membuat Akun Azure Storage

  1. Di portal Azure, telusuri Storage accounts.
  2. Klik + Create.
  3. Berikan detail konfigurasi berikut:

    Setelan Nilai
    Langganan Pilih langganan Azure Anda
    Grup resource Pilih yang sudah ada atau buat yang baru
    Nama akun penyimpanan Masukkan nama yang unik (misalnya, customappaccesslogs)
    Region Pilih region (misalnya, East US)
    Performa Standar (direkomendasikan)
    Redundansi LRS (Locally redundant storage)
  4. Klik Review + create.

  5. Tinjau ringkasan akun, lalu klik Buat.

  6. Tunggu hingga deployment selesai.

Mendapatkan kredensial Akun Penyimpanan

  1. Buka Storage Account yang baru saja Anda buat.
  2. Di navigasi kiri, pilih Access keys di bagian Security + networking.
  3. Klik Show keys.
  4. Salin dan simpan hal berikut untuk digunakan nanti:
    • Storage account name: customappaccesslogs
    • Kunci 1 atau Kunci 2: Kunci akses bersama

Membuat container blob

  1. Di Akun Penyimpanan yang sama, pilih Containers dari navigasi kiri.
  2. Klik + Container.
  3. Berikan detail konfigurasi berikut:
    • Nama: Masukkan access-logs
    • Tingkat akses publik: Pilih Pribadi (tidak ada akses anonim)
  4. Klik Create.

Mengonfigurasi aplikasi Anda untuk menulis log ke Azure Blob Storage

Konfigurasi aplikasi kustom Anda untuk menulis log akses ke container Azure Blob Storage yang Anda buat. Gunakan format log yang sama seperti yang dijelaskan di bagian GCS (JSON, CSV, atau NDJSON).

Mengonfigurasi feed di Google SecOps untuk menyerap log dari Azure

  1. Buka Setelan > Pengelolaan Data > Feed. Jika Anda menggunakan platform khusus SIEM, buka Settings > Feeds.
  2. Klik Tambahkan Feed Berita Baru.
  3. Klik Konfigurasi satu feed.
  4. Di kolom Nama feed, masukkan nama untuk feed (misalnya, Custom Application Access Logs - Azure).
  5. Pilih Microsoft Azure Blob Storage V2 sebagai Source type.
  6. Pilih CUSTOM_APPLICATION_ACCESS_CUSTOM sebagai Log type.
  7. Klik Berikutnya.
  8. Tentukan nilai untuk parameter input berikut:

    • Azure URI: Masukkan URL endpoint Blob Service dengan jalur container:

      https://customappaccesslogs.blob.core.windows.net/access-logs/
      
    • Opsi penghapusan sumber: Pilih opsi penghapusan sesuai preferensi Anda

    • Usia File Maksimum: Sertakan file yang diubah dalam jumlah hari terakhir (defaultnya adalah 180 hari)

    • Shared key: Masukkan nilai kunci bersama (kunci akses) yang Anda ambil dari Storage Account

    • Namespace aset: Namespace aset

    • Label penyerapan: Label yang akan diterapkan ke peristiwa dari feed ini (misalnya, custom_app_access)

  9. Klik Berikutnya.

  10. Tinjau konfigurasi feed berita baru Anda di layar Finalize, lalu klik Submit.

Opsi 4: Menyerap menggunakan Webhook

Membuat feed webhook di Google SecOps

  1. Buka Setelan > Pengelolaan Data > Feed. Jika Anda menggunakan platform khusus SIEM, buka Settings > Feeds.
  2. Klik Tambahkan Feed Berita Baru.
  3. Klik Konfigurasi satu feed.
  4. Di kolom Nama feed, masukkan nama untuk feed (misalnya, Custom Application Access Logs - Webhook).
  5. Pilih Webhook sebagai Jenis sumber.
  6. Pilih CUSTOM_APPLICATION_ACCESS_CUSTOM sebagai Log type.
  7. Klik Berikutnya.
  8. Tentukan nilai untuk parameter input berikut:
    • Pemisah: Masukkan \n untuk memisahkan peristiwa yang dibatasi baris baru (jika mengirim beberapa peristiwa per permintaan).
    • Namespace aset: Namespace aset.
    • Label penyerapan: Label yang akan diterapkan ke peristiwa dari feed ini (misalnya, custom_app_access).
  9. Klik Berikutnya.
  10. Tinjau konfigurasi feed berita baru Anda di layar Finalize, lalu klik Submit.

Membuat dan menyimpan kunci rahasia

  1. Di halaman detail feed, klik Buat Kunci Rahasia.
  2. Dialog akan menampilkan kunci rahasia.
  3. Salin dan simpan kunci rahasia dengan aman.

Mendapatkan URL endpoint feed

  1. Buka tab Detail untuk feed tersebut.
  2. Di bagian Endpoint Information, salin Feed endpoint URL.
  3. Format URL-nya adalah:

    https://{region}-chronicle.googleapis.com/v1/{parent}/logs:import
    

    Dengan {region} adalah region instance Google SecOps Anda (misalnya, us, europe, atau asia-southeast1), dan {parent} adalah jalur resource dalam format projects/<PROJECT_ID>/locations/<LOCATION>/instances/<INSTANCE_ID>/logTypes/<LOG_TYPE>.

  4. Simpan URL ini untuk langkah berikutnya.

  5. Klik Done.

Membuat kunci Google Cloud API

Google SecOps memerlukan kunci API untuk autentikasi. Buat kunci API yang dibatasi di Konsol Google Cloud.

  1. Buka halaman Credentials Konsol Google Cloud.
  2. Pilih project Anda (project yang terkait dengan instance Chronicle Anda).
  3. Klik Create credentials > kunci API.
  4. Kunci API akan dibuat dan ditampilkan dalam dialog.
  5. Klik Edit kunci API untuk membatasi kunci.
  6. Di halaman setelan kunci API:
    • Name: Masukkan nama deskriptif (misalnya, Chronicle Webhook API Key).
  7. Di bagian API restrictions:
    1. Pilih Restrict key.
    2. Di dropdown Select APIs, telusuri dan pilih Google SecOps API (atau Chronicle API).
  8. Klik Simpan.
  9. Salin nilai kunci API dari kolom API key di bagian atas halaman.
  10. Simpan kunci API dengan aman.

Mengonfigurasi aplikasi Anda untuk mengirim log melalui webhook

Konfigurasikan aplikasi kustom Anda untuk mengirim permintaan POST HTTP ke endpoint webhook Chronicle.

  • Buat URL webhook:

    1. Tambahkan kunci API ke URL endpoint feed:

      https://{region}-chronicle.googleapis.com/v1/{parent}/logs:import?key=<API_KEY>
      
    2. Ganti <API_KEY> dengan kunci API yang Anda buat.

  • Format permintaan POST HTTP:

    POST https://{region}-chronicle.googleapis.com/v1/{parent}/logs:import?key=<API_KEY> HTTP/1.1
    Content-Type: application/json
    x-chronicle-auth: <SECRET_KEY>
    
    {"timestamp": "2025-01-15T10:30:00Z", "user": "john.doe@example.com", "action": "login", "result": "success", "source_ip": "203.0.113.45"}
    
  • Untuk beberapa peristiwa (dibatasi baris baru):

    POST https://{region}-chronicle.googleapis.com/v1/{parent}/logs:import?key=<API_KEY> HTTP/1.1
    Content-Type: application/json
    x-chronicle-auth: <SECRET_KEY>
    
    {"timestamp": "2025-01-15T10:30:00Z", "user": "john.doe@example.com", "action": "login", "result": "success"}
    {"timestamp": "2025-01-15T10:30:05Z", "user": "jane.smith@example.com", "action": "access", "result": "denied"}
    
  • Contoh menggunakan curl:

    curl -X POST \
      "https://{region}-chronicle.googleapis.com/v1/{parent}/logs:import?key=YOUR_API_KEY" \
      -H "Content-Type: application/json" \
      -H "x-chronicle-auth: YOUR_SECRET_KEY" \
      -d '{"timestamp": "2025-01-15T10:30:00Z", "user": "john.doe@example.com", "action": "login", "result": "success", "source_ip": "203.0.113.45"}'
    

Opsi 5: Menyerap menggunakan Amazon Kinesis Data Firehose

Membuat feed di Google SecOps

  1. Buka Setelan > Pengelolaan Data > Feed. Jika Anda menggunakan platform khusus SIEM, buka Settings > Feeds.
  2. Klik Tambahkan Feed Berita Baru.
  3. Klik Konfigurasi satu feed.
  4. Di kolom Nama feed, masukkan nama untuk feed (misalnya, Custom Application Access Logs - Firehose).
  5. Pilih Amazon Data Firehose sebagai Source type.
  6. Pilih CUSTOM_APPLICATION_ACCESS_CUSTOM sebagai Log type.
  7. Klik Berikutnya.
  8. Tentukan nilai untuk parameter input berikut:
    • Split delimiter: Masukkan \n untuk memisahkan log yang dibatasi baris baru.
    • Namespace aset: Namespace aset.
    • Label penyerapan: Label yang akan diterapkan ke peristiwa dari feed ini (misalnya, custom_app_access).
  9. Klik Berikutnya.
  10. Tinjau konfigurasi feed, lalu klik Kirim.
  11. Klik Buat Kunci Rahasia untuk membuat kunci rahasia guna mengautentikasi feed ini.
  12. Salin dan simpan kunci rahasia karena Anda tidak dapat melihat rahasia ini lagi.
  13. Buka tab Detail.
  14. Salin URL endpoint feed dari kolom Endpoint Information.
  15. Klik Done.

Membuat kunci API untuk feed Amazon Data Firehose

  1. Buka halaman Credentials di Konsol Google Cloud di https://console.cloud.google.com/apis/credentials
  2. Klik Create credentials, lalu pilih API key.
  3. Klik Edit kunci API untuk membatasi kunci.
  4. Di bagian API restrictions, pilih Restrict key.
  5. Telusuri dan pilih Google SecOps API.
  6. Klik Simpan.
  7. Salin dan simpan kunci API.

Membuat URL endpoint

  1. Tambahkan kunci API ke URL endpoint feed dalam format berikut:

    <FEED_ENDPOINT_URL>?key=<API_KEY>
    
  2. Ganti kode berikut:

    • <FEED_ENDPOINT_URL>: URL endpoint feed di langkah sebelumnya
    • <API_KEY>: Kunci API di langkah sebelumnya

    Contoh:

    https://{region}-chronicle.googleapis.com/v1/{parent}/logs:import?key=AIzaSyD...
    
  3. Simpan URL lengkap ini untuk langkah berikutnya.

Membuat kebijakan IAM untuk Firehose

  1. Di AWS Console, buka tab IAM > Policies > Create policy > JSON.
  2. Tempel JSON kebijakan berikut:

    {
        "Version": "2012-10-17",
        "Statement": [
            {
                "Effect": "Allow",
                "Action": [
                    "firehose:PutRecord",
                    "firehose:PutRecordBatch"
                ],
                "Resource": "arn:aws:firehose:us-east-1:123456789012:deliverystream/CustomAppAccessToChronicle"
            }
        ]
    }
    
  3. Ganti kode berikut:

    • us-east-1: Region AWS Anda
    • 123456789012: ID akun AWS Anda (nomor 12 digit)
    • CustomAppAccessToChronicle: Nama aliran pengiriman Firehose Anda (Anda akan membuatnya di langkah berikutnya)
  4. Beri nama kebijakan CustomAppAccessFirehoseWritePolicy.

  5. Klik Create policy.

Membuat peran IAM untuk CloudWatch Logs

  1. Buka IAM > Roles > Create role.
  2. Pilih Custom trust policy dan tempel:

    {
        "Version": "2012-10-17",
        "Statement": [
            {
                "Effect": "Allow",
                "Principal": {
                    "Service": "logs.us-east-1.amazonaws.com"
                },
                "Action": "sts:AssumeRole"
            }
        ]
    }
    
  3. Ganti us-east-1 dengan region AWS Anda.

  4. Klik Berikutnya.

  5. Telusuri dan pilih kebijakan CustomAppAccessFirehoseWritePolicy yang Anda buat di langkah sebelumnya.

  6. Klik Berikutnya.

  7. Beri nama peran CloudWatchLogsToFirehoseRole.

  8. Klik Buat peran.

Membuat aliran pengiriman Kinesis Data Firehose

  1. Di AWS Console, buka Kinesis > Data Firehose > Create delivery stream.
  2. Berikan detail konfigurasi berikut:

    • Sumber dan tujuan:

      • Sumber: Pilih PUT langsung atau sumber lainnya
      • Destination: Pilih HTTP endpoint
    • Nama aliran pengiriman:

      • Delivery stream name: Masukkan CustomAppAccessToChronicle
    • Tujuan endpoint HTTP:

      • URL endpoint HTTP: Masukkan URL endpoint lengkap yang Anda buat sebelumnya (endpoint feed + kunci API)
      • Encoding konten: Pilih GZIP (direkomendasikan untuk menghemat bandwidth)
    • Header HTTP kustom:

      • Klik Add custom HTTP header
      • Nama header: Masukkan X-Goog-Chronicle-Auth
      • Header value: Masukkan kunci rahasia yang Anda simpan di langkah sebelumnya
    • Setelan pencadangan:

      • Source record backup in Amazon S3: Pilih Failed data only (direkomendasikan)
      • S3 bucket: Pilih bucket yang ada atau buat bucket baru untuk data yang gagal
    • Petunjuk buffer:

      • Ukuran buffer: Masukkan 1 MiB (minimum untuk endpoint HTTP)
      • Interval buffering: Masukkan 60 detik
    • Durasi percobaan ulang:

      • Retry duration: Masukkan 300 detik (5 menit)
  3. Klik Create delivery stream.

  4. Tunggu hingga status aliran pengiriman berubah menjadi Active (1-2 menit).

Mengonfigurasi aplikasi Anda untuk menulis ke CloudWatch Logs

Mengonfigurasi aplikasi kustom Anda untuk menulis log akses ke CloudWatch Log Group. Kemudian, buat filter langganan untuk melakukan streaming log ke Firehose.

  1. Di AWS Console, buka CloudWatch > Logs > Log groups.
  2. Buat grup log baru atau pilih grup log yang ada tempat aplikasi Anda menulis log.
  3. Klik tab Subscription filters.
  4. Klik Create > Create Amazon Kinesis Data Firehose subscription filter.
  5. Berikan detail konfigurasi berikut:

    • Destination: Pilih aliran pengiriman CustomAppAccessToChronicle.
    • Grant permission: Pilih peran CloudWatchLogsToFirehoseRole.
    • Nama filter langganan: Masukkan CustomAppAccessToChronicle.
    • Log format: Pilih Other (Google SecOps menangani penguraian).
    • Pola filter langganan: Biarkan kosong untuk mengirim semua peristiwa.
  6. Klik Mulai streaming.

  7. Log di-streaming secara real-time ke Google SecOps melalui Firehose.

Membuat parser kustom

Setelah menyerap log, Anda harus membuat parser kustom untuk menormalisasi data ke dalam format UDM.

  1. Buka Settings > Data Management > Parsers. Jika Anda menggunakan platform khusus SIEM, buka Settings > Parsers.
  2. Klik Create Parser.
  3. Pilih CUSTOM_APPLICATION_ACCESS_CUSTOM sebagai Log type.
  4. Gunakan editor parser untuk membuat pola Grok atau ekstensi parser yang memetakan kolom log Anda ke kolom UDM.

    Contoh pemetaan parser:

    Kolom Log Kustom Kolom UDM
    timestamp metadata.event_timestamp
    user principal.user.email_addresses
    action security_result.action
    result security_result.summary
    source_ip principal.ip
    application target.application
    resource target.resource.name
  5. Uji parser dengan log sampel.

  6. Klik Save untuk mengaktifkan parser.

Untuk mengetahui petunjuk pembuatan parser yang mendetail, lihat Opsi parser mandiri.

Memverifikasi penyerapan

Setelah mengonfigurasi feed dan parser, pastikan log diserap:

  1. Buka Search > UDM Search.
  2. Jalankan kueri berikut:

    metadata.log_type = "CUSTOM_APPLICATION_ACCESS_CUSTOM"
    
  3. Pastikan peristiwa muncul di hasil penelusuran.

  4. Pastikan kolom UDM diisi dengan benar berdasarkan konfigurasi parser Anda.

Tabel pemetaan UDM

Kolom Log Pemetaan UDM Logika
tambahan Digabungkan dengan label yang dibuat dari service, env, msg.attachment.fileName, msg.attachment.digest, msg.attachment.key, msg.attachment.authorizeId, msg.attachment.contentType, dest.type, type, msg.sortID, msg.refID, state.reported.applications_installed, state.reported.applications_status, state.reported.ota_queue, state.reported.VICMB_Deg_Battery_LimpHome, state.reported.VICMB_Inhibit_Propulsion, state.reported.VICMB_FA_LostComm_BPCM, state.reported.VICMB_FA_LostComm_SFAM1, state.reported.VICMB_Inhibit_HV, state.reported.VICMB_FA_LostComm_RIDM, state.reported.VICMB_FA_LostComm_RWAM1, state.reported.uname, meta.reported.battery_charging_rate_kw.timestamp, state.reported.battery_charging_rate_kw, meta.reported.cell.connected.timestamp, meta.reported.cell.packet_loss.timestamp, meta.reported.cell.average_ping_ms.timestamp, meta.reported.cell.bitrate.timestamp, meta.reported.cell.download_speed_bytes_per_sec.timestamp, meta.reported.cell.signal_strength.timestamp, meta.reported.cell.signal.timestamp, state.reported.cell.connected, state.reported.cell.packet_loss, state.reported.cell.average_ping_ms, state.reported.cell.bitrate, state.reported.cell.download_speed_bytes_per_sec, state.reported.cell.signal_strength, state.reported.cell.signal
request_time metadata.collected_timestamp Diurai dari request_time menggunakan format ISO8601
msg_1, msg.body metadata.description Nilai dari msg_1 jika tidak kosong, jika tidak, msg.body
user_id, src_email, otadata.1687965118.initiator metadata.event_type Ditetapkan ke "USER_UNCATEGORIZED" jika salah satu dari user_id, src_email, otadata.1687965118.initiator ada, jika tidak, "GENERIC_EVENT"
otadata.1687965118.deployment_id metadata.product_deployment_id Nilai disalin langsung
versi metadata.product_version Nilai disalin langsung
response.status network.http.response_code Dikonversi ke bilangan bulat
request_id principal.resource.product_object_id Nilai disalin langsung
msg.attachment.url, otadata.1687965118.download_url principal.url Nilai dari msg.attachment.url jika tidak kosong, jika tidak, otadata.1687965118.download_url
src_email, otadata.1687965118.initiator principal.user.email_addresses Nilai dari src_email jika cocok dengan ekspresi reguler email, jika tidak, dari otadata.1687965118.initiator
user_id principal.user.userid Nilai disalin langsung
level security_result.severity Setel ke "INFORMATIONAL" jika levelnya adalah "INFO"
metadata.product_name Setel ke "Akses Aplikasi Kustom"
metadata.vendor_name Setel ke "Akses Aplikasi Kustom"
timestamp metadata.event_timestamp Dipetakan dari log perubahan
level additional.fields Dipetakan dari log perubahan
service additional.fields Dipetakan dari log perubahan
env additional.fields Dipetakan dari log perubahan

Log Perubahan

Melihat Log Perubahan untuk parser ini

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