SV-214097r508027_rule
V-214097
SRG-APP-000498-DB-000347
PGS9-00-005600
CAT II
10
Note: The following instructions use the PGDATA and PGVER environment variables. See supplementary content APPENDIX-F for instructions on configuring PGDATA and APPENDIX-H for PGVER.
Configure PostgreSQL to produce audit records when unsuccessful attempts to modify categories of information. 
To ensure that logging is enabled, review supplementary content APPENDIX-C for instructions on enabling logging. All denials are logged when logging is enabled. 
With pgaudit installed the following configurations can be made: 
$ sudo su - postgres 
$ vi ${PGDATA?}/postgresql.conf 
Add the following parameters (or edit existing parameters): 
pgaudit.log='ddl, role, read, write' 
Now, as the system administrator, reload the server with the new configuration: 
# SYSTEMD SERVER ONLY 
$ sudo systemctl reload postgresql-${PGVER?}
# INITD SERVER ONLY 
$ sudo service postgresql-${PGVER?} reload
First, as the database administrator, verify pgaudit is enabled by running the following SQL:
$ sudo su - postgres
$ psql -c "SHOW shared_preload_libraries"
If the output does not contain "pgaudit", this is a finding.
Next, verify that role, read, write, and ddl auditing are enabled:
$ psql -c "SHOW pgaudit.log"
If the output does not contain role, read, write, and ddl, this is a finding.
V-214097
False
PGS9-00-005600
First, as the database administrator, verify pgaudit is enabled by running the following SQL:
$ sudo su - postgres
$ psql -c "SHOW shared_preload_libraries"
If the output does not contain "pgaudit", this is a finding.
Next, verify that role, read, write, and ddl auditing are enabled:
$ psql -c "SHOW pgaudit.log"
If the output does not contain role, read, write, and ddl, this is a finding.
M
3994