Skip to content

Commit 653ac0f

Browse files
adr for cloudwatch kms (#421)
1 parent 85b7e36 commit 653ac0f

1 file changed

Lines changed: 28 additions & 1 deletion

File tree

  • docs/architecture-and-infrastructure/architecture-decision-records

docs/architecture-and-infrastructure/architecture-decision-records/index.md

Lines changed: 28 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -727,4 +727,31 @@ As a result of adopting a customer-managed KMS CMK for SSM Parameter Store:
727727

728728
2. **Negative Outcomes:**
729729
- Additional operational overhead to manage KMS keys (policies, rotation, lifecycle).
730-
- Terraform configurations become slightly more complex due to explicit key management.
730+
- Terraform configurations become slightly more complex due to explicit key management.
731+
732+
## 25. Use Customer-Managed KMS CMK for CloudWatch Logs encryption (CKV_AWS_158)
733+
734+
Date: 2025-12-30
735+
736+
#### Status
737+
Approved
738+
739+
#### Context
740+
Checkov control CKV_AWS_158 – Ensure CloudWatch Log Groups are encrypted with a customer-managed KMS key requires that AWS CloudWatch log groups use a customer-managed AWS KMS key rather than leaving log groups unencrypted or using less controlled defaults.
741+
742+
To meet this control and align with MHCLG security and compliance requirements, we must explicitly define how KMS keys are created, managed, and applied to CloudWatch log groups within our Infrastructure-as-Code (IaC) workflows.
743+
744+
#### Decision
745+
We have decided to create and manage a dedicated customer-managed KMS key (CMK) using Terraform and use this CMK to encrypt all CloudWatch Logs log groups by explicitly setting **kms_key_id** on each log group.
746+
747+
#### Consequences
748+
As a result of adopting a customer-managed KMS CMK for CloudWatch Logs:
749+
750+
1. **Positive Outcomes:**
751+
- Full compliance with Checkov control CKV_AWS_158.
752+
- Centralised and consistent encryption strategy managed via Terraform.
753+
754+
2. **Negative Outcomes:**
755+
- Additional operational overhead to manage KMS keys (policies, rotation, lifecycle).
756+
- Terraform configurations become slightly more complex due to explicit key management.
757+

0 commit comments

Comments
 (0)