Use KMS CMK customer-managed keys for Redshift clusters
Use customer-managed KMS keys instead of AWS-managed keys, to have granular control over encrypting and decrypting data. Encrypt Redshift clusters with a Customer-managed KMS key. This is a recommended best practice.
Risk Level: High
Cloud Entity: Amazon Redshift
CloudGuard Rule ID: D9.AWS.CRY.15
Covered by Spectral: Yes
Category: Database
GSL LOGIC
Redshift should have dataEncrypted and kmsKeyId
REMEDIATION
From Portal
Following steps will enable KMS CMK for the desired redshift cluster:
- Login to the AWS Management Console.
- Select the appropriate AWS region.
- Navigate to KMS service at https://console.aws.amazon.com/kms/.
- Click on Customer managed keys in the left navigation panel
- Verify the name and key ID of the KMS default key generated for the Redshift service, key identified by the aws/redshift alias.
- Now, navigate to Redshift dashboard at https://console.aws.amazon.com/redshift/.
- In the navigation panel, under Redshift Dashboard, click Clusters.
- Choose the Redshift cluster that you want to modify encryption settings and go click on Properties tab.
- Verify the Encryption status (Disabled/enabled) under the Cluster Properties.
- Click on edit tab on the right side and go to edit encryption select the customer managed key created already and save it.
Notes: You must enable encryption when you launch the Redshift cluster, before data is placed on it. Encryption on a cluster is immutable, and cannot be reversed.
From TF
resource "aws_redshift_cluster" "test" {
+ encrypted = true
}
From Command Line
To turn on encryption for Redshift cluster
aws redshift modify-cluster --cluster-ientifier PUT_VALUE --encrypted -- kms-key-id PUT_VALUE
References
- https://docs.aws.amazon.com/redshift/latest/mgmt/managing-clusters-console.html#create-cluster
- https://docs.aws.amazon.com/redshift/latest/mgmt/changing-cluster-encryption.html
- https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/redshift_cluster
Amazon Redshift
Amazon Redshift is a fast, fully managed data warehouse that makes it simple and cost-effective to analyze all your data using standard SQL and your existing Business Intelligence (BI) tools. It allows you to run complex analytic queries against petabytes of structured data, using sophisticated query optimization, columnar storage on high-performance local disks, and massively parallel query execution. Most results come back in seconds. With Amazon Redshift, you can start small for just $0.25 per hour with no commitments and scale out to petabytes of data for $1,000 per terabyte per year, less than a tenth the cost of traditional solutions.
Compliance Frameworks
- AWS CSA CCM v.3.0.1
- AWS CSA CCM v.4.0.1
- AWS CloudGuard Best Practices
- AWS CloudGuard CheckUp
- AWS CloudGuard SOC2 based on AICPA TSC 2017
- AWS CloudGuard Well Architected Framework
- AWS HIPAA
- AWS HITRUST
- AWS HITRUST v11.0.0
- AWS ISO 27001:2013
- AWS ISO27001:2022
- AWS ITSG-33
- AWS MAS TRM Framework
- AWS MITRE ATT&CK Framework v10
- AWS MITRE ATT&CK Framework v11.3
- AWS NIST 800-171
- AWS NIST 800-53 Rev 4
- AWS NIST 800-53 Rev 5
- AWS NIST CSF v1.1
- AWS PCI-DSS 3.2
- AWS PCI-DSS 4.0
- AWS Security Risk Management
- CloudGuard AWS All Rules Ruleset
Updated about 1 year ago