TMAegis
Thêm quy tắc cho postgres

TMA-POSTGRES-3.1.20

Ensure 'log_connections' is enabled

Trung bìnhCấp 1Tự độngpostgres

Mô tả

Enabling the log_connections setting causes each attempted connection to the server to be logged, as well as successful completion of client authentication. This parameter cannot be changed after the session start. PostgreSQL 18 turned log_connections into a list; 'all' (or receipt,authentication,authorization,setup_durations) passes, the pre-18 boolean 'on' does not. Runs psql as ${PGUSER:-postgres} against ${PGDATABASE:-postgres}; set PGHOST/PGPORT and use ~/.pgpass (not PGPASSWORD, see 1.6/1.7) when peer authentication is not available.

Cách kiểm tra

Phương pháp kiểm tra: Truy vấn SQL

sql_query
out=$(psql -X -U "${PGUSER:-postgres}" -d "${PGDATABASE:-postgres}" -tAc "SELECT CASE WHEN current_setting('log_connections') = 'all' OR string_to_array(replace(current_setting('log_connections'), ' ', ''), ',') @> ARRAY['receipt','authentication','authorization','setup_durations'] THEN 'compliant' ELSE 'noncompliant' END" 2>/dev/null) || exit 1; printf '%s\n' "$out"
Đầu ra mong đợi
compliant

Cách khắc phục

Phương pháp khắc phục: Câu lệnh SQL

shell
psql -X -U "${PGUSER:-postgres}" -c "ALTER SYSTEM SET log_connections = 'all'" -c "SELECT pg_reload_conf()"

Thuộc tính

Hệ điều hành
Bất kỳ
Thẻ
postgresdatabaselogging
Tham chiếu
CIS PostgreSQL 18 Benchmark v1.0.0 - 3.1.20 Ensure 'log_connections' is enabled

Kiểm tra máy này

Chạy lệnh này trên máy bạn được phép kiểm tra. Lần quét chỉ ở chế độ đọc.

shell
tmaegis scan --target postgres