Terraform AWS Redshift
Redshift clusters or serverless workgroups with VPC networking, encryption, audit logging, snapshot settings, parameter groups, enhanced VPC routing, and controlled access.
Controls enforced
These compliance controls are checked at terraform plan time.
- Redshift clusters should have audit logging enabled(low effort)
- Redshift clusters should have automatic snapshots enabled(low effort)
- Redshift clusters should have automatic upgrades to major versions enabled(low effort)
- Redshift clusters should be encrypted with CMK(low effort)
- Redshift cluster encryption in transit should be enabled(low effort)
- Redshift clusters should have audit logging and encryption enabled(low effort)
- Redshift clusters should have enhanced VPC routing enabled(low effort)
- Redshift clusters should have KMS encryption enabled(low effort)
- Redshift clusters should have required maintenance settings(low effort)
- Redshift clusters should have Multi-AZ deployments enabled(low effort)
- Redshift clusters should not use the default admin username(low effort)
- Redshift clusters should not use the default database name(low effort)
- Redshift clusters should prohibit public access(low effort)
Quick start
View this module on the compliance.tf registry — versions, inputs, and outputs →
See the Get Started guide and Registry Endpoints for details on how to customize the module for your requirements.
Migration from upstream
Already using terraform-aws-modules? Change only the source URL:
module "redshift" {
source = "terraform-aws-modules/redshift/aws"
version = ">= 7.0.0, < 8.0.0"
}module "redshift" {
source = "soc2.compliance.tf/terraform-aws-modules/redshift/aws"
version = ">= 7.0.0, < 8.0.0"
}Same arguments. Same outputs. Controls are checked at terraform plan. See the Migration Guide for step-by-step instructions.
Reversibility
No lock-in. Switch back by reverting the source URL:
module "redshift" {
source = "terraform-aws-modules/redshift/aws"
}Run terraform init -upgrade. Terraform state is unchanged — same resource addresses, same provider, no compliance.tf-specific resources. Controls you already applied remain in AWS.
Mapped compliance frameworks
Framework coverage
Which controls from this module are active under each framework endpoint.
● enforced by default · ○ not activated by this endpoint