Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Mengaudit objek basis data
Dengan pgAudit yang telah disiapkan di instans DB RDS for PostgreSQL Anda dan dikonfigurasi untuk kebutuhan Anda, informasi lebih detail akan ditangkap dalam log PostgreSQL. Misalnya, sementara konfigurasi pencatatan log PostgreSQL default mengidentifikasi tanggal dan waktu perubahan dibuat dalam tabel basis data, dengan ekstensi pgAudit, entri log dapat menyertakan skema, pengguna yang membuat perubahan, dan detail lainnya tergantung pada cara parameter ekstensi dikonfigurasi. Anda dapat menyiapkan audit untuk melacak perubahan dengan cara berikut.
Untuk setiap sesi, oleh pengguna. Untuk tingkat sesi, Anda dapat menangkap teks perintah yang sepenuhnya memenuhi syarat.
Untuk setiap objek, oleh pengguna dan basis data.
Kemampuan audit objek diaktifkan saat Anda membuat peran rds_pgaudit pada sistem, lalu menambahkan peran ini ke parameter pgaudit.role dalam grup parameter kustom Anda. Secara default, parameter pgaudit.role tidak ditetapkan dan satu-satunya nilai yang diizinkan adalah rds_pgaudit. Langkah-langkah berikut mengasumsikan bahwa pgaudit telah diinisialisasi dan bahwa Anda telah membuat ekstensi pgaudit dengan mengikuti prosedur di Menyiapkan ekstensi pgAudit.
Sebagaimana ditunjukkan dalam contoh ini, baris "LOG: AUDIT: SESSION" memberikan informasi tabel dan skemanya, serta detail lainnya.
Menyiapkan audit objek
Gunakan
psqluntuk terhubung ke instans DB RDS for PostgreSQL.psql --host=your-instance-name.aws-region.rds.amazonaws.com --port=5432 --username=postgrespostgres --password --dbname=labdb-
Buat peran basis data yang dinamai
rds_pgauditmenggunakan perintah berikut.labdb=>CREATE ROLE rds_pgaudit;CREATE ROLElabdb=> Tutup sesi
psql.labdb=>\qDalam beberapa langkah berikutnya, gunakan AWS CLI untuk memodifikasi parameter log audit di grup parameter kustom Anda.
-
Gunakan AWS CLI perintah berikut untuk mengatur
pgaudit.roleparameter kerds_pgaudit. Secara default, parameter ini kosong, danrds_pgauditmerupakan satu-satunya nilai yang diizinkan.aws rds modify-db-parameter-group \ --db-parameter-group-namecustom-param-group-name\ --parameters "ParameterName=pgaudit.role,ParameterValue=rds_pgaudit,ApplyMethod=pending-reboot" \ --regionaws-region -
Gunakan AWS CLI perintah berikut untuk me-reboot sehingga perubahan Anda pada parameter berlaku.
aws rds reboot-db-instance \ --db-instance-identifieryour-instance\ --regionaws-region Jalankan perintah berikut untuk mengonfirmasi bahwa
pgaudit.rolediatur kerds_pgaudit.SHOW pgaudit.role;pgaudit.role ------------------ rds_pgaudit
Untuk menguji pencatatan log pgAudit, Anda dapat menjalankan beberapa contoh perintah yang ingin diaudit. Misalnya, Anda dapat menjalankan perintah berikut.
CREATE TABLE t1 (id int); GRANT SELECT ON t1 TO rds_pgaudit; SELECT * FROM t1;id ---- (0 rows)
Log basis data harus berisi entri yang serupa dengan entri berikut.
...
2017-06-12 19:09:49 UTC:...:rds_test@postgres:[11701]:LOG: AUDIT:
OBJECT,1,1,READ,SELECT,TABLE,public.t1,select * from t1;
...Untuk informasi tentang menampilkan log, lihat Memantau file log Amazon RDS.
Untuk mempelajari lebih lanjut tentang ekstensi PGAudit, lihat PGAudit