

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# Mengaudit objek basis data
<a name="Appendix.PostgreSQL.CommonDBATasks.pgaudit.auditing"></a>

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](Appendix.PostgreSQL.CommonDBATasks.pgaudit.basic-setup.md). 

![Gambar file log PostgreSQL setelah mengatur pgAudit.](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/pgaudit-log-example.png)


Sebagaimana ditunjukkan dalam contoh ini, baris "LOG: AUDIT: SESSION" memberikan informasi tabel dan skemanya, serta detail lainnya. 

**Menyiapkan audit objek**

1. Gunakan `psql` untuk terhubung ke instans DB RDS for PostgreSQL.

   ```
   psql --host={{your-instance-name}}.{{aws-region}}.rds.amazonaws.com --port=5432 --username={{postgres}}postgres --password --dbname={{labdb}}
   ```

1. Buat peran basis data yang dinamai `rds_pgaudit` menggunakan perintah berikut.

   ```
   labdb=> CREATE ROLE rds_pgaudit;
   CREATE ROLE
   labdb=>
   ```

1. Tutup sesi `psql`.

   ```
   labdb=> \q
   ```

   Dalam beberapa langkah berikutnya, gunakan AWS CLI untuk memodifikasi parameter log audit di grup parameter kustom Anda. 

1. Gunakan AWS CLI perintah berikut untuk mengatur `pgaudit.role` parameter ke`rds_pgaudit`. Secara default, parameter ini kosong, dan `rds_pgaudit` merupakan satu-satunya nilai yang diizinkan.

   ```
   aws rds modify-db-parameter-group \
      --db-parameter-group-name {{custom-param-group-name}} \
      --parameters "ParameterName=pgaudit.role,ParameterValue=rds_pgaudit,ApplyMethod=pending-reboot" \
      --region {{aws-region}}
   ```

1. Gunakan AWS CLI perintah berikut untuk me-reboot sehingga perubahan Anda pada parameter berlaku.

   ```
   aws rds reboot-db-instance \
       --db-instance-identifier {{your-instance}} \
       --region {{aws-region}}
   ```

1. Jalankan perintah berikut untuk mengonfirmasi bahwa `pgaudit.role` diatur ke `rds_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](USER_LogAccess.md).

Untuk mempelajari lebih lanjut tentang ekstensi PGAudit, lihat [PGAudit](https://github.com/pgaudit/pgaudit/blob/master/README.md) aktif. GitHub