Check ID: redshift_cluster_public_access
Provider: AWS
Service: redshift
Severity: CRITICAL
Categories: internet-exposed
Resource type: AwsRedshiftCluster

What this check verifies

Amazon Redshift clusters with publicly accessible endpoints in public subnets and security groups allowing TCP from 0.0.0.0/0 or ::/0 are identified as internet-exposed. Public endpoints without internet reachability due to private subnets or restrictive rules are recognized separately.

Risk

Internet-exposed Redshift endpoints allow direct DB access from any host, impacting:
  • Confidentiality: credential brute force, unauthorized queries, data exfiltration
  • Integrity: unauthorized writes or schema changes
  • Availability: scanning/abuse leading to connection exhaustion or disruption

Recommendation

Prefer private connectivity: disable public access, place clusters in private subnets, and apply least privilege security groups limited to trusted CIDRs or VPC sources. Use defense in depth with VPN/peering/endpoints, strong authentication, and monitoring. Avoid 0.0.0.0/0 or ::/0 to database ports.

Remediation

aws redshift modify-cluster —cluster-identifier <CLUSTER_ID> —no-publicly-accessible

References

Where this check fires

This check runs on every scheduled scan against your AWS account. Findings appear at Cloud Security → Findings filterable by Check ID = redshift_cluster_public_access. To re-evaluate after a fix, hit Run now on the account’s schedule under Cloud Security → Schedules — the next scan re-checks this control and marks the finding fixed or keeps it persistent.
← Back to AWS checks