TMA-POSTGRES-3.1.25
Ensure 'log_statement' is set correctly
보통레벨 1자동postgres
설명
The log_statement setting specifies the types of SQL statements that are logged. Valid values are: ; none (off) ; ddl ; mod ; all (all statements) It is recommended this be set to ddl unless otherwise directed by your organization's logging policy. Fails only when log_statement is none; choose ddl, mod or all per policy. 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.
점검 방법
감사 방식: SQL 쿼리
sql_query
out=$(psql -X -U "${PGUSER:-postgres}" -d "${PGDATABASE:-postgres}" -tAc "SELECT CASE WHEN current_setting('log_statement') <> 'none' THEN 'compliant' ELSE 'noncompliant' END" 2>/dev/null) || exit 1; printf '%s\n' "$out"- 예상 출력
compliant
조치 방법
조치 방식: SQL 문
shell
psql -X -U "${PGUSER:-postgres}" -c "ALTER SYSTEM SET log_statement = 'ddl'" -c "SELECT pg_reload_conf()"속성
- 운영 체제
- 모두
- 태그
- postgresdatabaselogging
- 참고 자료
- CIS PostgreSQL 18 Benchmark v1.0.0 - 3.1.25 Ensure 'log_statement' is set correctly
이 호스트 점검하기
감사 권한이 있는 시스템에서 실행하세요. 스캔은 읽기 전용입니다.
shell
tmaegis scan --target postgres