DynamoDB는 암호화되나요?
네. 모든 DynamoDB 데이터는 AWS Key Management Service(KMS)에 저장된 암호화 키를 사용해 기본적으로 저장 시 암호화되며, 암호화를 끌 수는 없습니다. 키 유형은 선택할 수 있고 — AWS 소유 키(기본값, 무료), AWS 관리형 키, 고객 관리형 키 — 전송 중 데이터는 HTTPS/TLS로 보호됩니다.
저장 시 암호화가 포괄하는 것
암호화는 암호화된 테이블이 내구성 있는 매체에 저장하는 모든 것에 적용됩니다. 기본 키를 포함한 테이블 자체, 로컬 및 글로벌 보조 인덱스, 스트림, 글로벌 테이블, 백업까지입니다. 테이블에 정렬 키가 있다면, 범위 경계를 표시하는 일부 정렬 키는 테이블 메타데이터에 평문으로 저장된다는 점에 유의하세요.
세 가지 키 옵션
- AWS 소유 키 — 기본값입니다. DynamoDB가 소유하고 관리하며 추가 비용이 없습니다.
- AWS 관리형 키 — 계정에 저장되고 AWS KMS가 관리합니다(KMS 요금이 발생합니다).
- 고객 관리형 키 — 여러분이 생성하고 소유하며 교체하고, 액세스를 완전히 통제합니다(KMS 요금이 발생합니다).
키 유형은 콘솔, CLI, API에서 언제든 바꿀 수 있습니다.
"KMS 요금이 발생합니다"가 실제로 얼마인지
AWS는 요금이 있다는 사실만 말하고 값을 매기는 일은 여러분에게 맡기므로, 사람들은 수백만 건을 처리하는 데이터베이스에 요청당 요금이 붙는다고 짐작합니다. 그렇지 않습니다. 암호화 문서는 구체적입니다: "DynamoDB doesn't call AWS KMS for every DynamoDB operation. The key is refreshed once every 5 minutes per caller with active traffic."
이는 직접 확인할 수 있는 산수로 줄어듭니다. 트래픽이 끊이지 않는 호출자 하나는 시간당 12번 키를 갱신하므로, 730시간짜리 한 달 동안:
- 요청 수: 12 × 730 = KMS 호출 8,760번, 10,000건당 $0.03이므로 $0.026.
- 키 자체: 고객 관리형 키는 시간 단위로 안분되어 월 $1. AWS 관리형 키에는 월 키 요금이 없고 요청 요금만 붙습니다.
즉 바쁜 테이블에 붙은 고객 관리형 키는 월 약 $1.03 이고, 트래픽이 늘어도 요청 쪽은 거의 움직이지 않습니다. 애플리케이션 인스턴스 50개가 같은 테이블을 치면 호출 438,000번, 즉 $1.31입니다. 만약 DynamoDB가 작업마다 KMS를 호출했다면, 월 2억 건을 처리하는 테이블에는 $600이 더 붙었을 것입니다.
고객 관리형 키를 고르기 전에 예산에 넣어 둘 것이 하나 더 있습니다. 키를 비활성화하거나 삭제 예약하면 테이블이 Inaccessible 상태가 되고, DynamoDB가 7일 넘게 키에 접근하지 못하면 테이블은 온디맨드 백업으로 아카이브되며 그에 대한 요금이 청구됩니다.
애플리케이션에는 투명합니다
DynamoDB는 데이터를 읽을 때 투명하게 복호화합니다. 암호화된 테이블을 다루려고 코드를 바꿀 필요가 없고, 쿼리도 그대로 동작하며, 지연 시간도 같은 한 자릿수 밀리초 범위를 유지합니다. 개별 속성 값을 애플리케이션 밖으로 내보내기 전에 종단 간 보호하고 싶다면, AWS는 AWS Database Encryption SDK를 통한 클라이언트 측 암호화도 제공합니다.
더 알아보기
백업도 암호화됩니다. 동작 방식은 백업 및 PITR 가이드에서 확인하고, 테이블 비용은 요금 계산기로 추정하고(KMS는 별도 청구입니다), 암호화된 테이블을 살펴보려면 DynoTable을 다운로드하세요 — 복호화는 데이터가 어떤 클라이언트에 닿기 전에 AWS가 처리합니다.
참고 자료
- DynamoDB encryption at rest — Amazon DynamoDB Developer Guide
- What is Amazon DynamoDB? — Amazon DynamoDB Developer Guide
- What is the AWS Database Encryption SDK? — AWS Database Encryption SDK Developer Guide
- DynamoDB encryption at rest: How it works — Amazon DynamoDB Developer Guide
- AWS Key Management Service pricing — AWS
위에 링크된 공식 AWS 문서를 기준으로 2026-07-13에 마지막으로 검증했습니다. 비용 부분에 쓰인 KMS 갱신 주기와 요금은 2026-07-28에 가져왔습니다.