Mengumpulkan log AWS Aurora
Dokumen ini menjelaskan cara menyerap log AWS Aurora ke Google Security Operations. AWS Aurora adalah layanan database relasional terkelola yang menawarkan performa, skalabilitas, dan ketersediaan tinggi. Dalam integrasi ini, Anda akan mengonfigurasi AWS Aurora untuk meneruskan log ke Google SecOps untuk analisis, pemantauan, dan deteksi ancaman.
Sebelum memulai
Pastikan Anda memenuhi prasyarat berikut:
- Instance Google SecOps
- Akses istimewa ke AWS
- Cluster database AWS Aurora disiapkan dan berjalan
Mengonfigurasi bucket Amazon S3
- Buat bucket Amazon S3 dengan mengikuti panduan pengguna ini: Membuat bucket
- Simpan Nama dan Region bucket untuk digunakan nanti.
- Buat pengguna dengan mengikuti panduan pengguna ini: Membuat pengguna IAM.
- Pilih Pengguna yang dibuat.
- Pilih tab Kredensial keamanan.
- Klik Create Access Key di bagian Access Keys.
- Pilih Layanan pihak ketiga sebagai Kasus penggunaan.
- Klik Berikutnya.
- Opsional: tambahkan tag deskripsi.
- Klik Create access key.
- Klik Download CSV file untuk menyimpan Access Key dan Secret Access Key untuk digunakan nanti.
- Klik Selesai.
- Pilih tab Izin.
- Klik Tambahkan izin di bagian Kebijakan izin.
- Pilih Tambahkan izin.
- Pilih Lampirkan kebijakan secara langsung.
- Cari dan pilih kebijakan AmazonS3FullAccess dan CloudWatchLogsFullAccess.
- Klik Berikutnya.
- Klik Add permissions.
Mengonfigurasi Pemantauan yang Ditingkatkan
- Login ke AWS Management Console.
- Di kotak penelusuran, ketik RDS, lalu pilih RDS dari daftar layanan.
- Di RDS Dashboard, pilih Databases dari panel navigasi.
- Pilih cluster Aurora yang ingin Anda pantau.
- Di bagian Logs & monitoring, klik Modify.
- Buka bagian Monitoring dan aktifkan Enhanced Monitoring.
- Tetapkan peran Monitoring ke peran IAM yang sesuai yang memiliki izin untuk memublikasikan ke CloudWatch Logs atau S3.
- Simpan perubahan dan terapkan pada cluster Aurora Anda.
Cara mengonfigurasi log audit AWS Aurora
- Di RDS Dashboard, pilih Databases, lalu klik Aurora cluster Anda.
- Di bagian Logs & Monitoring, klik Modify.
- Di bagian Database Options, pastikan Enable Audit Logs dipilih.
- Di bagian Destination, pilih S3 dan tentukan S3 bucket tempat log akan disimpan.
- Klik Simpan perubahan untuk menerapkan setelan.
Opsional: Konfigurasi Log AWS Aurora menggunakan CloudWatch
Untuk kemampuan pemantauan tambahan, Anda dapat mengonfigurasi CloudWatch Logs untuk merekam log Aurora.
- Di RDS Dashboard, pilih Aurora cluster Anda.
- Di bagian Logs & Monitoring, pastikan integrasi CloudWatch Logs diaktifkan.
- Buka CloudWatch Logs dan buat Grup Log baru untuk menyimpan log Aurora.
- Di layar Log Groups, pilih nama Log Group baru Anda.
- Pilih Tindakan > Ekspor data ke Amazon S3.
Di layar Ekspor data ke Amazon S3, di bagian Tentukan ekspor data, tetapkan rentang waktu untuk data yang akan diekspor menggunakan Dari dan Ke.
Pilih bucket S3, pilih akun yang terkait dengan bucket Amazon S3.
Nama bucket S3, pilih bucket Amazon S3.
Awalan Bucket S3, masukkan string yang dibuat secara acak yang Anda tentukan dalam kebijakan bucket.
Pilih Ekspor untuk mengekspor data log Anda ke Amazon S3.
Untuk melihat status data log yang Anda ekspor ke Amazon S3, pilih Tindakan > Lihat semua ekspor ke Amazon S3.
Menyiapkan feed
Ada dua titik entri berbeda untuk menyiapkan feed di platform Google SecOps:
- Setelan SIEM > Feed > Tambahkan Baru
- Hub Konten > Paket Konten > Mulai
Cara menyiapkan feed AWS Aurora
- Klik paket Amazon Cloud Platform.
- Temukan jenis log AWS Aurora.
Tentukan nilai di kolom berikut.
- Jenis Sumber: Amazon SQS V2
- Nama Antrean: Nama antrean SQS yang akan dibaca
- URI S3: URI bucket.
s3://your-log-bucket-name/
- Ganti
your-log-bucket-name
dengan nama sebenarnya bucket S3 Anda.
- Ganti
Opsi penghapusan sumber: Pilih opsi penghapusan sesuai dengan preferensi penyerapan Anda.
Usia File Maksimum: Menyertakan file yang diubah dalam beberapa hari terakhir. Defaultnya adalah 180 hari.
ID Kunci Akses Antrean SQS: Kunci akses akun yang berupa string alfanumerik 20 karakter.
Kunci Akses Rahasia Antrean SQS: Kunci akses akun yang berupa string alfanumerik 40 karakter.
Opsi lanjutan
- Nama Feed: Nilai yang telah diisi otomatis yang mengidentifikasi feed.
- Namespace Aset: Namespace yang terkait dengan feed.
- Label Penyerapan: Label yang diterapkan ke semua peristiwa dari feed ini.
Klik Buat feed.
Untuk mengetahui informasi selengkapnya tentang cara mengonfigurasi beberapa feed untuk berbagai jenis log dalam keluarga produk ini, lihat Mengonfigurasi feed menurut produk.
Tabel Pemetaan UDM
Kolom Log | Pemetaan UDM | Logika |
---|---|---|
account |
principal.group.product_object_id |
Dipetakan langsung dari kolom account dalam log mentah. |
column1 |
timestamp_epoch |
Dipetakan langsung dari kolom column1 dalam log mentah. Digunakan untuk mendapatkan metadata.event_timestamp . |
column10 |
Bervariasi | Dapat berupa principal.process.command_line , object , atau number , bergantung pada format log. |
column11 |
ddl atau response atau command_line2 |
Dapat berupa principal.resource.resource_subtype (ddl), security_result.outcomes.value (respons), atau bagian dari principal.process.command_line (command_line2) bergantung pada format log. |
column12 |
operation atau response atau command_line3 |
Dapat berupa sr.summary (operasi), security_result.outcomes.value (respons), atau bagian dari principal.process.command_line (command_line3) bergantung pada format log. |
column13 |
database atau response |
Dapat berupa target.resource.name (database) atau security_result.outcomes.value (respons) bergantung pada format log. |
column14 |
object |
Dipetakan langsung ke principal.resource.product_object_id atau target_data.resource.name , bergantung pada format log. |
column15 |
command_line |
Dipetakan langsung ke principal.process.command_line . |
column16 |
response |
Dipetakan langsung ke security_result.outcomes.value . |
column2 |
timestamp atau timestamp_ms |
Dipetakan langsung dari kolom column2 dalam log mentah. |
column3 |
ip atau hostname |
Dapat berupa principal.ip atau principal.resource.name , bergantung pada format log. |
column4 |
port atau userid |
Dapat berupa principal.port atau principal.user.userid , bergantung pada format log. |
column5 |
userid atau ip |
Dapat berupa principal.user.userid atau principal.ip , bergantung pada format log. |
column6 |
hostname atau connection_id |
Dapat berupa principal.resource.name atau network.session_id , bergantung pada format log. |
column7 |
connection_id atau query_id |
Dapat berupa network.session_id atau principal.process.pid , bergantung pada format log. |
column8 |
operation |
Dipetakan langsung ke sr.summary atau metadata.product_event_type . |
column9 |
query_id atau database |
Dapat berupa principal.process.pid atau target_data.resource.name , bergantung pada format log. |
command_line |
principal.process.command_line |
Dipetakan langsung dari kolom command_line yang diekstrak. |
connection_id |
network.session_id |
Dipetakan langsung dari kolom connection_id yang diekstrak. |
database |
target.resource.name |
Dipetakan langsung dari kolom database yang diekstrak. Diperoleh dari beberapa kolom seperti operation , command_line , has_principal_user , dan has_principal_machine melalui logika bersyarat di parser. Dapat berupa RESOURCE_DELETION , RESOURCE_CREATION , RESOURCE_READ , RESOURCE_WRITTEN , USER_RESOURCE_ACCESS , USER_UNCATEGORIZED , atau GENERIC_EVENT . Dikodekan secara permanen ke "AWS_AURORA". Dipetakan dari column8 atau berasal dari logika parser. Dikodekan secara permanen ke "AURORA". Dikodekan secara permanen ke "AMAZON". |
has_principal_machine |
has_principal_machine |
Ditetapkan ke "true" jika principal.ip ada, jika tidak, diinisialisasi ke "false". |
has_principal_user |
has_principal_user |
Ditetapkan ke "true" jika principal.user.userid ada, jika tidak, diinisialisasi ke "false". |
hostname |
principal.resource.name |
Dipetakan langsung dari kolom hostname yang diekstrak. |
ip |
principal.ip |
Dipetakan langsung dari kolom ip yang diekstrak. |
logevent.id |
security_result.detection_fields.value |
Bertingkat dalam target.logEvents.logEvents , dipetakan dengan kunci "id". |
logevent.message |
security_result.detection_fields.value |
Disarangkan dalam target.logEvents.logEvents , dipetakan dengan kunci "message". Digunakan untuk mengekstrak principal.ip , time_unix , operation , dan user . |
logevent.timestamp |
security_result.detection_fields.value |
Bertingkat dalam target.logEvents.logEvents , dipetakan dengan kunci "timestamp". |
object |
target_data.resource.name atau principal.resource.product_object_id |
Dipetakan langsung dari kolom object yang diekstrak. |
operation |
sr.summary |
Dipetakan langsung dari kolom operation yang diekstrak. |
port |
principal.port |
Dipetakan langsung dari kolom port yang diekstrak. |
query_id |
principal.process.pid |
Dipetakan langsung dari kolom query_id yang diekstrak. |
response |
security_result.outcomes.value |
Dipetakan langsung dari kolom response yang diekstrak. |
service |
principal.application |
Dipetakan langsung dari kolom service dalam log mentah. |
src_ip |
principal.ip |
Diekstrak dari logevent.message dalam struktur target.logEvents.logEvents bertingkat. |
target.logEvents.logGroup |
target.resource.attribute.labels.value |
Dipetakan dengan kunci "logGroup". |
target.logEvents.logStream |
target.resource.attribute.labels.value |
Dipetakan dengan kunci "logStream". |
target.logEvents.messageType |
target.resource.attribute.labels.value |
Dipetakan dengan kunci "messageType". |
target.logEvents.owner |
target.resource.attribute.labels.value |
Dipetakan dengan kunci "owner". |
timestamp_epoch |
metadata.event_timestamp |
Dikonversi menjadi metadata.event_timestamp menggunakan filter date . |
user |
principal.user.userid |
Diekstrak dari logevent.message dalam struktur target.logEvents.logEvents bertingkat. |
userid |
principal.user.userid |
Dipetakan langsung dari kolom userid yang diekstrak. |
Perlu bantuan lain? Dapatkan jawaban dari anggota Komunitas dan profesional Google SecOps.