설명
이벤트 스트림에는 사용자 활동, 애플리케이션 로그, 내부 메시지가 포함될 수 있습니다. Kinesis 서버 측 암호화는 스트림에 저장되는 레코드를 KMS로 보호합니다. 실제 암호화 상태와 사용할 키가 데이터 보호 요구사항에 맞는지 확인하세요.
암호화는 활성화한 뒤 들어오는 레코드에 적용되며, 이전의 비암호화 레코드를 소급해서 암호화하지 않습니다. 스트림 접근 권한과 전송 구간 보호도 별도로 필요합니다.
잠재적 영향
서버 측 암호화가 꺼져 있으면 새로 저장하는 민감한 레코드가 조직의 저장 암호화 요구사항을 충족하지 못할 수 있습니다. 키와 권한을 잘못 구성하면 데이터 쓰기나 읽기가 중단될 수 있습니다.
해결 방법
encryption_type = "KMS"와 유효한kms_key_id를 명시하세요. AWS 관리형 키나 조직에서 요구하는 고객 관리형 키를 선택하세요.- 데이터를 쓰고 읽는 주체의 KMS 권한을 필요한 범위로 제한하세요.
- 변경 완료 후 실제 스트림 상태와 새 레코드의 암호화, 쓰기·읽기를 검증하세요. 이전 레코드의 보존 기간과 처리 방안도 확인하세요.
예시
변경 전
hcl
resource "aws_kinesis_stream" "event_stream" {
name = "terraform-kinesis-test"
shard_count = 1
retention_period = 48
encryption_type = "NONE"
}
서버 측 암호화를 사용하지 않도록 설정합니다.
변경 후
hcl
resource "aws_kinesis_stream" "event_stream" {
name = "terraform-kinesis-test"
shard_count = 1
retention_period = 48
encryption_type = "KMS"
kms_key_id = "alias/aws/kinesis"
}
AWS 관리형 Kinesis 키의 별칭인 alias/aws/kinesis로 암호화를 요청합니다. 활성화 이후 새 레코드의 보호를 확인하세요. 과거 레코드까지 암호화되는 것은 아닙니다.