turbot/steampipe-mod-aws-compliance

Control: 37 Aurora PostgreSQL DB clusters should publish logs to CloudWatch Logs

Description

This control checks whether an Amazon Aurora PostgreSQL DB cluster is configured to publish logs to Amazon CloudWatch Logs. The control fails if the Aurora PostgreSQL DB cluster isn't configured to publish PostgreSQL logs to CloudWatch Logs.

Database logging provides detailed records of requests made to an RDS cluster. Aurora PostgreSQL generates event logs that contain useful information for administrators. Publishing these logs to CloudWatch Logs centralizes log management and helps you perform real-time analysis of the log data. CloudWatch Logs retains logs in highly durable storage. You can also create alarms and view metrics in CloudWatch.

Remediation

To publish Aurora PostgreSQL DB cluster logs to CloudWatch Logs, see Publishing Aurora PostgreSQL logs to Amazon CloudWatch Logs in the Amazon RDS User Guide.

Usage

Run the control in your terminal:

powerpipe control run aws_compliance.control.foundational_security_rds_37

Snapshot and share results via Turbot Pipes:

powerpipe login
powerpipe control run aws_compliance.control.foundational_security_rds_37 --share

SQL

This control uses a named query:

select
arn as resource,
case
when engine <> 'aurora-postgresql' then 'skip'
when enabled_cloudwatch_logs_exports ?& array ['postgresql'] then 'ok'
else 'alarm'
end as status,
case
when engine <> 'aurora-postgresql' then title || ' is of ' || engine || ' type.'
when enabled_cloudwatch_logs_exports ?& array ['postgresql'] then title || ' logging enabled.'
else title || ' logging disabled.'
end as reason
, region, account_id
from
aws_rds_db_cluster;

Tags