Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Pencatatan audit Db2
Dengan pencatatan audit Db2, Amazon RDS mencatat aktivitas database, termasuk pengguna yang masuk ke database dan kueri yang dijalankan terhadap database. RDSmengunggah log audit yang telah selesai ke bucket Amazon S3 Anda, menggunakan AWS Identity and Access Management peran IAM () yang Anda berikan.
Topik
Menyiapkan pencatatan audit Db2
Untuk mengaktifkan pencatatan audit untuk database Amazon RDS untuk Db2, Anda mengaktifkan DB2_AUDIT
opsi pada instans Db2 DB RDS untuk. Kemudian, konfigurasikan kebijakan audit untuk mengaktifkan fitur untuk database tertentu. Untuk mengaktifkan opsi pada instance RDS for Db2 DB, Anda mengonfigurasi pengaturan opsi untuk opsi tersebutDB2_AUDIT
. Anda melakukannya dengan memberikan Amazon Resource Names (ARNs) untuk bucket Amazon S3 Anda dan IAM peran dengan izin untuk mengakses bucket Anda.
Untuk mengatur pencatatan audit Db2 untuk database Db2, selesaikan langkah-langkah berikut. RDS
Topik
Langkah 1: Buat bucket Amazon S3.
Jika Anda belum melakukannya, buat bucket Amazon S3 tempat Amazon RDS dapat mengunggah file log audit database RDS untuk Db2 Anda. Pembatasan berikut berlaku untuk bucket S3 yang Anda gunakan sebagai target untuk file audit:
-
Itu harus Wilayah AWS sama dengan instans Db2 DB AndaRDS.
-
Bucket S3 tidak boleh dibuka untuk umum.
-
Bucket S3 tidak dapat menggunakan Kunci Objek S3.
-
Pemilik ember juga harus menjadi pemilik IAM peran.
Untuk mempelajari cara membuat bucket Amazon S3, lihat Membuat bucket di Panduan Pengguna Amazon S3.
Setelah mengaktifkan pencatatan audit, Amazon RDS secara otomatis mengirimkan log dari instans DB Anda ke lokasi berikut:
Log tingkat instans DB -
bucket_name
/db2-audit-logs/dbi_resource_id
/date_time_utc
/Log tingkat basis data -
bucket_name
/db2-audit-logs/dbi_resource_id
/date_time_utc
/db_name
/
Catat Amazon Resource Name (ARN) untuk bucket Anda. Informasi ini diperlukan untuk menyelesaikan langkah-langkah selanjutnya.
Langkah 2: Buat IAM kebijakan
Buat IAM kebijakan dengan izin yang diperlukan untuk mentransfer file log audit dari instans DB ke bucket Amazon S3. Langkah ini mengasumsikan bahwa Anda memiliki bucket S3.
Sebelum Anda membuat kebijakan, kumpulkan informasi berikut:
-
ARNUntuk ember Anda.
-
Kunci ARN for your AWS Key Management Service (AWS KMS), jika bucket Anda menggunakan SSE-KMS enkripsi.
Buat IAM kebijakan yang menyertakan izin berikut:
"s3:ListBucket", "s3:GetBucketACL", "s3:GetBucketLocation", "s3:PutObject", "s3:ListMultipartUploadParts", "s3:AbortMultipartUpload", "s3:ListAllMyBuckets"
catatan
Amazon RDS memerlukan s3:ListAllMyBuckets
tindakan secara internal untuk memverifikasi bahwa yang sama Akun AWS memiliki bucket S3 dan instans Db2 DB RDS untuk Db2.
Jika bucket Anda menggunakan SSE-KMS enkripsi, sertakan juga izin berikut:
"kms:GenerateDataKey", "kms:Decrypt"
Anda dapat membuat IAM kebijakan dengan menggunakan AWS Management Console atau AWS Command Line Interface (AWS CLI).
Untuk membuat IAM kebijakan agar Amazon RDS dapat mengakses bucket Amazon S3
Masuk ke AWS Management Console dan buka IAM konsol di https://console.aws.amazon.com/iam/
. -
Di panel navigasi, pilih Kebijakan.
-
Pilih Buat kebijakan, lalu pilih JSON.
-
Di Tambahkan tindakan, filter berdasarkan S3. Tambahkan akses ListBucket, GetBucketAcl, dan GetBucketLocation.
-
Untuk Menambahkan sumber daya, pilih Tambah. Untuk jenis Resource, pilih bucket, lalu masukkan nama bucket Anda. Kemudian, pilih Tambahkan sumber daya.
-
Pilih Tambahkan pernyataan baru.
-
Di Tambahkan tindakan, filter berdasarkan S3. Tambahkan akses PutObject, ListMultipartUploadParts, dan AbortMultipartUpload.
-
Untuk Menambahkan sumber daya, pilih Tambah. Untuk jenis Sumber Daya, pilih objek, dan masukkan
your bucket name/*
. Kemudian, pilih Tambahkan sumber daya. -
Pilih Tambahkan pernyataan baru.
-
Di Tambahkan tindakan, filter berdasarkan S3. Tambahkan akses ListAllMyBuckets.
-
Untuk Menambahkan sumber daya, pilih Tambah. Untuk jenis Sumber Daya, pilih Semua Sumber Daya. Kemudian, pilih Tambahkan sumber daya.
-
Jika Anda menggunakan KMS kunci Anda sendiri untuk mengenkripsi data:
Pilih Tambahkan pernyataan baru.
Di Tambahkan tindakan, filter berdasarkanKMS. Tambahkan akses GenerateDataKeydan Dekripsi.
Untuk Menambahkan sumber daya, pilih Tambah. Untuk jenis Sumber Daya, pilih Semua Sumber Daya. Kemudian, pilih Tambahkan sumber daya.
-
Pilih Berikutnya.
-
Untuk Nama kebijakan, masukkan nama untuk kebijakan ini.
-
(Opsional) Untuk Deskripsi, masukkan deskripsi untuk kebijakan ini.
-
Pilih Buat kebijakan.
Untuk membuat IAM kebijakan agar Amazon RDS dapat mengakses bucket Amazon S3
-
Jalankan perintah create-policy. Dalam contoh berikut, ganti
iam_policy_name
andamzn-s3-demo-bucket
dengan nama untuk IAM kebijakan Anda dan nama bucket Amazon S3 target Anda.Untuk Linux, macOS, atau Unix:
aws iam create-policy \ --policy-name
iam_policy_name
\ --policy-document '{ "Version": "2012-10-17", "Statement": [ { "Sid": "Statement1", "Effect": "Allow", "Action": [ "s3:ListBucket", "s3:GetBucketAcl", "s3:GetBucketLocation" ], "Resource": [ "arn:aws:s3:::amzn-s3-demo-bucket
" ] }, { "Sid": "Statement2", "Effect": "Allow", "Action": [ "s3:PutObject", "s3:ListMultipartUploadParts", "s3:AbortMultipartUpload" ], "Resource": [ "arn:aws:s3:::amzn-s3-demo-bucket
/*" ] }, { "Sid": "Statement3", "Effect": "Allow", "Action": [ "s3:ListAllMyBuckets" ], "Resource": [ "*" ] }, { "Sid": "Statement4", "Effect": "Allow", "Action": [ "kms:GenerateDataKey", "kms:Decrypt" ], "Resource": [ "*" ] } ] }'Untuk Windows:
aws iam create-policy ^ --policy-name
iam_policy_name
^ --policy-document '{ "Version": "2012-10-17", "Statement": [ { "Sid": "Statement1", "Effect": "Allow", "Action": [ "s3:ListBucket", "s3:GetBucketAcl", "s3:GetBucketLocation" ], "Resource": [ "arn:aws:s3:::amzn-s3-demo-bucket
" ] }, { "Sid": "Statement2", "Effect": "Allow", "Action": [ "s3:PutObject", "s3:ListMultipartUploadParts", "s3:AbortMultipartUpload" ], "Resource": [ "arn:aws:s3:::amzn-s3-demo-bucket
/*" ] }, { "Sid": "Statement3", "Effect": "Allow", "Action": [ "s3:ListAllMyBuckets" ], "Resource": [ "*" ] }, { "Sid": "Statement4", "Effect": "Allow", "Action": [ "kms:GenerateDataKey", "kms:Decrypt" ], "Resource": [ "*" ] } ] }' -
Setelah kebijakan dibuat, perhatikan kebijakan tersebut. ARN Anda membutuhkan ARN untukLangkah 3: Buat IAM peran dan lampirkan IAM kebijakan Anda.
Untuk informasi tentang membuat IAM kebijakan, lihat Membuat IAM kebijakan di Panduan IAM Pengguna.
Langkah 3: Buat IAM peran dan lampirkan IAM kebijakan Anda
Langkah ini mengasumsikan bahwa Anda membuat IAM kebijakan diLangkah 2: Buat IAM kebijakan. Pada langkah ini, Anda membuat IAM peran untuk instans Db2 DB Anda RDS dan kemudian melampirkan IAM kebijakan Anda ke peran tersebut.
Anda dapat membuat IAM peran untuk instans DB Anda dengan menggunakan konsol atau AWS CLI.
Untuk membuat IAM peran dan melampirkan IAM kebijakan Anda
Masuk ke AWS Management Console dan buka IAM konsol di https://console.aws.amazon.com/iam/
. -
Di panel navigasi, pilih Peran.
-
Pilih Buat peran.
-
Untuk jenis entitas tepercaya, pilih Layanan AWS.
-
Untuk kasus Layanan atau penggunaan, pilih RDS, lalu pilih RDS— Tambahkan Peran ke Database.
-
Pilih Berikutnya.
-
Untuk kebijakan Izin, cari dan pilih nama IAM kebijakan yang Anda buat.
-
Pilih Berikutnya.
-
Untuk Nama peran, masukkan nama peran.
-
(Opsional) Untuk Deskripsi, masukkan deskripsi untuk peran baru ini.
-
Pilih Buat peran.
Untuk membuat IAM peran dan melampirkan IAM kebijakan Anda
-
Jalankan perintah create-role. Dalam contoh berikut, ganti
iam_role_name
dengan nama untuk IAM peran Anda.Untuk Linux, macOS, atau Unix:
aws iam create-role \ --role-name
iam_role_name
\ --assume-role-policy-document '{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "rds.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }'Untuk Windows:
aws iam create-role ^ --role-name
iam_role_name
^ --assume-role-policy-document '{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "rds.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }' -
Setelah peran dibuat, perhatikan ARN peran ini. Anda membutuhkan ini ARN untuk langkah selanjutnyaLangkah 4: Konfigurasikan grup opsi untuk pencatatan audit Db2.
-
Jalankan perintah attach-role-policy. Dalam contoh berikut, ganti
iam_policy_arn
dengan ARN IAM kebijakan yang Anda buatLangkah 2: Buat IAM kebijakan. Gantiiam_role_name
dengan nama IAM peran yang baru saja Anda buat.Untuk Linux, macOS, atau Unix:
aws iam attach-role-policy \ --policy-arn
iam_policy_arn
\ --role-nameiam_role_name
Untuk Windows:
aws iam attach-role-policy ^ --policy-arn
iam_policy_arn
^ --role-nameiam_role_name
Untuk informasi selengkapnya, lihat Membuat peran untuk mendelegasikan izin kepada IAM pengguna di Panduan IAM Pengguna.
Langkah 4: Konfigurasikan grup opsi untuk pencatatan audit Db2
Proses untuk menambahkan opsi pencatatan audit Db2 ke instance RDS untuk Db2 DB adalah sebagai berikut:
-
Buat grup opsi baru, atau salin atau ubah grup opsi yang ada.
-
Tambahkan dan konfigurasikan semua opsi yang diperlukan.
-
Kaitkan grup opsi tersebut dengan instans DB.
Setelah Anda menambahkan opsi pencatatan audit Db2, Anda tidak perlu memulai ulang instans DB Anda. Begitu grup opsi aktif, Anda dapat membuat audit dan menyimpan log audit di bucket S3.
Untuk menambah dan mengonfigurasi pencatatan audit Db2 pada grup opsi instans DB
-
Pilih salah satu cara berikut:
-
Gunakan grup opsi yang sudah ada.
-
Buat grup opsi DB kustom, dan gunakan grup opsi itu. Untuk informasi selengkapnya, lihat Membuat grup opsi.
-
-
Tambahkan AUDIT opsi DB2_ ke grup opsi, dan konfigurasikan pengaturan opsi. Untuk informasi selengkapnya tentang cara menambahkan opsi, lihat Menambahkan opsi ke grup opsi.
-
Untuk IAMROLE_ _ ARN, masukkan ARN IAM peran yang Anda buatLangkah 3: Buat IAM peran dan lampirkan IAM kebijakan Anda.
-
Untuk S3_ BUCKET _ ARN, masukkan bucket S3 ARN yang akan digunakan untuk log audit Db2 Anda. Bucket harus berada di Wilayah yang sama dengan instans Db2 DB AndaRDS. Kebijakan yang terkait dengan IAM peran yang Anda masukkan harus mengizinkan operasi yang diperlukan pada sumber daya ini.
-
-
Terapkan grup opsi ke instans DB baru atau yang sudah ada. Pilih salah satu cara berikut:
-
Jika Anda membuat instans DB baru, terapkan grup opsi ketika Anda meluncurkan instans.
-
Di instans DB yang sudah ada, terapkan grup opsi dengan mengubah instans lalu memberikan grup opsi baru. Untuk informasi selengkapnya, lihat Memodifikasi instans Amazon RDS DB.
-
Langkah 5: Konfigurasikan kebijakan audit
Untuk mengonfigurasi kebijakan audit untuk database Db2 AndaRDS, sambungkan ke rdsadmin
database menggunakan nama pengguna utama dan kata sandi utama untuk instans Db2 DB AndaRDS. Kemudian, panggil prosedur rdsadmin.configure_db_audit
tersimpan dengan nama DB database Anda dan nilai parameter yang berlaku.
Contoh berikut menghubungkan ke database dan mengkonfigurasi kebijakan audit untuk testdb
dengan kategoriAUDIT,,, CHECKINGOBJMAINT, SECMAINTSYSADMIN, danVALIDATE. Nilai status BOTH
mencatat keberhasilan dan kegagalan, dan ERROR TYPE
secara NORMAL
default. Untuk informasi selengkapnya tentang cara menggunakan prosedur tersimpan ini, lihatrdsadmin.configure_db_audit.
db2 "connect to rdsadmin user
master_user
usingmaster_password
" db2 "call rdsadmin.configure_db_audit('testdb
', 'ALL', 'BOTH', ?)"
Langkah 6: Periksa konfigurasi audit
Untuk memastikan bahwa kebijakan audit Anda diatur dengan benar, periksa status konfigurasi audit Anda.
Untuk memeriksa konfigurasi, sambungkan ke rdsadmin
database menggunakan nama pengguna utama dan kata sandi master untuk instans Db2 DB AndaRDS. Kemudian, jalankan SQL pernyataan berikut dengan nama DB database Anda. Dalam contoh berikut, nama DB adalah testdb
.
db2 "select task_id, task_type, database_name, lifecycle, varchar(bson_to_json(task_input_params), 500) as task_params, cast(task_output as varchar(500)) as task_output from table(rdsadmin.get_task_status(null,'
testdb
','CONFIGURE_DB_AUDIT'))" Sample Output TASK_ID TASK_TYPE DATABASE_NAME LIFECYCLE -------------------- -------------------- --------------- ------------- 2 CONFIGURE_DB_AUDIT DB2DB SUCCESS ... continued ... TASK_PARAMS -------------------------------------------------------- { "AUDIT_CATEGORY" : "ALL", "CATEGORY_SETTING" : "BOTH" } ... continued ... TASK_OUTPUT --------------------------------------------------- 2023-12-22T20:27:03.029Z Task execution has started. 2023-12-22T20:27:04.285Z Task execution has completed successfully.
Mengelola pencatatan audit Db2
Setelah menyiapkan pencatatan audit Db2, Anda dapat mengubah kebijakan audit untuk database tertentu, atau menonaktifkan pencatatan audit di tingkat database atau untuk seluruh instans DB. Anda juga dapat mengubah bucket Amazon S3 tempat file log Anda diunggah.
Topik
Memodifikasi kebijakan audit Db2
Untuk memodifikasi kebijakan audit untuk database Db2 tertentuRDS, jalankan prosedur yang rdsadmin.configure_db_audit
disimpan. Dengan prosedur tersimpan ini, Anda dapat mengubah kategori, pengaturan kategori, dan konfigurasi jenis kesalahan kebijakan audit. Untuk informasi selengkapnya, lihat rdsadmin.configure_db_audit.
Memodifikasi lokasi file log Anda
Untuk mengubah bucket Amazon S3 tempat file log Anda diunggah, lakukan salah satu hal berikut:
Ubah grup opsi saat ini yang dilampirkan ke instans Db2 DB Anda RDS — Perbarui
S3_BUCKET_ARN
pengaturanDB2_AUDIT
opsi untuk menunjuk ke bucket baru. Selain itu, pastikan untuk memperbarui IAM kebijakan yang dilampirkan pada IAM peran yang ditentukan olehIAM_ROLE_ARN
pengaturan di grup opsi terlampir. IAMKebijakan ini harus menyediakan bucket baru Anda dengan izin akses yang diperlukan. Untuk informasi tentang izin yang diperlukan dalam IAM kebijakan, lihatBuat IAM kebijakan.Lampirkan instans Db2 DB Anda RDS ke grup opsi yang berbeda - Ubah instans DB Anda untuk mengubah grup opsi yang dilampirkan padanya. Pastikan bahwa grup opsi baru dikonfigurasi dengan benar
S3_BUCKET_ARN
danIAM_ROLE_ARN
pengaturan. Untuk informasi tentang cara mengkonfigurasi pengaturan ini untukDB2_AUDIT
opsi, lihatKonfigurasikan grup opsi.
Saat Anda memodifikasi grup opsi, pastikan Anda segera menerapkan perubahan. Untuk informasi selengkapnya, lihat Memodifikasi instans Amazon RDS DB.
Menonaktifkan pencatatan audit Db2
Untuk menonaktifkan pencatatan audit Db2, lakukan salah satu hal berikut:
Nonaktifkan pencatatan audit RDS untuk instans Db2 DB - Ubah instans DB Anda dan hapus grup opsi dengan
DB2_AUDIT
opsi darinya. Untuk informasi selengkapnya, lihat Memodifikasi instans Amazon RDS DB.Nonaktifkan pencatatan audit untuk database tertentu — Hentikan pencatatan audit dan hapus kebijakan audit
rdsadmin.disable_db_audit
dengan memanggil nama DB database Anda. Untuk informasi selengkapnya, lihat rdsadmin.disable_db_audit.db2 "call rdsadmin.disable_db_audit( '
db_name
')"
Melihat log audit
Setelah mengaktifkan pencatatan audit Db2, tunggu setidaknya satu jam sebelum melihat data audit di bucket Amazon S3 Anda. Amazon RDS secara otomatis mengirimkan log dari instans Db2 DB Anda RDS ke lokasi berikut:
-
Log tingkat instans DB -
bucket_name
/db2-audit-logs/dbi_resource_id
/date_time_utc
/ -
Log tingkat basis data -
bucket_name
/db2-audit-logs/dbi_resource_id
/date_time_utc
/db_name
/
Contoh tangkapan layar berikut dari konsol Amazon S3 menunjukkan daftar folder RDS untuk file log tingkat instans Db2 DB.
Contoh screenshot berikut dari konsol Amazon S3 menunjukkan file log tingkat database untuk instans Db2 DB. RDS
Pemecahan masalah pencatatan audit Db2
Gunakan informasi berikut untuk memecahkan masalah umum dengan pencatatan audit Db2.
Tidak dapat mengonfigurasi kebijakan audit
Jika memanggil prosedur yang disimpan rdsadmin.configure_db_audit
mengembalikan kesalahan, bisa jadi grup opsi dengan DB2_AUDIT
opsi tidak terkait dengan instance RDS for Db2 DB. Ubah instance DB untuk menambahkan grup opsi, lalu coba panggil prosedur tersimpan lagi. Untuk informasi selengkapnya, lihat Memodifikasi instans Amazon RDS DB.
Tidak ada data di bucket Amazon S3
Jika data pencatatan hilang dari bucket Amazon S3, periksa hal berikut:
Bucket Amazon S3 berada di Wilayah yang sama dengan instans Db2 DB AndaRDS.
Peran yang Anda tentukan dalam pengaturan
IAM_ROLE_ARN
opsi dikonfigurasi dengan izin yang diperlukan untuk mengunggah log ke bucket Amazon S3 Anda. Untuk informasi selengkapnya, lihat Buat IAM kebijakan.Pengaturan ARNs untuk
IAM_ROLE_ARN
danS3_BUCKET_ARN
opsi sudah benar dalam grup opsi yang terkait dengan instans Db2 DB AndaRDS. Untuk informasi selengkapnya, lihat Konfigurasikan grup opsi.
Anda dapat memeriksa status tugas konfigurasi pencatatan audit Anda dengan menghubungkan ke database dan menjalankan SQL pernyataan. Untuk informasi selengkapnya, lihat Periksa konfigurasi audit.
Anda juga dapat memeriksa acara untuk mengetahui lebih lanjut tentang mengapa log mungkin hilang. Untuk informasi tentang cara melihat acara, lihatMelihat log, peristiwa, dan streaming di konsol Amazon RDS.