Question 1,512 of 724
DVA-C02 Security Practice Question
A developer is designing a system that stores sensitive user data in DynamoDB. The data must be encrypted at rest and in transit. Which THREE actions should the developer take?
Answer choices
Why each option matters
Answer the question above first, then reveal the full breakdown to understand why each option is right or wrong.
Correct answer & explanation
✓
Enable DynamoDB encryption at rest using an AWS KMS managed key (SSE-KMS).
Options A, B, and C are correct. DynamoDB supports encryption at rest using AWS KMS; both SSE-KMS (A) and customer managed keys (B) provide encrypted storage. Using HTTPS (C) ensures encryption in transit. Option D is incorrect because DynamoDB already uses TLS 1.2 by default for all connections, so no explicit action is needed. Option E is unnecessary as server-side encryption and HTTPS provide the required protections.
Answer analysis
Option-by-option breakdown
For each option: why learners choose it and why it is or isn't the right answer here.
- ✓
Enable DynamoDB encryption at rest using an AWS KMS managed key (SSE-KMS).
Why this is correct
DynamoDB encryption at rest with an AWS managed KMS key (aws/dynamodb) is enabled by default for all new tables, so specifying SSE-KMS with that key provides transparent AES-256 server-side encryption. Because the key is managed by AWS, you cannot control rotation or permissions, but it fully satisfies the at-rest encryption requirement without extra operational overhead.
- ✓
Enable DynamoDB encryption at rest using an AWS KMS customer managed key.
Why this is correct
Using a customer managed KMS key gives you direct control over the key lifecycle, including enabling automatic yearly rotation, setting IAM policies and key policies, and creating grants for cross-account or application-specific access. DynamoDB integrates with KMS to encrypt and decrypt table data and indexes on every read and write, so this also meets the at-rest requirement while adding auditability through CloudTrail key usage events.
- ✓
Use HTTPS for all API calls to DynamoDB.
Why this is correct
HTTPS ensures that all data exchanged between the application and the DynamoDB API endpoint is protected in transit, preventing eavesdropping and man-in-the-middle attacks. DynamoDB only exposes a secure HTTPS endpoint, so making HTTPS a mandatory call policy is a valid transport-layer control for sensitive data.
- ✗
Use TLS 1.2 for all connections.
Why it's wrong here
DynamoDB already enforces TLS 1.2 (and now TLS 1.3) on its HTTPS endpoints, so this is not an action the developer must take; there is no DynamoDB setting to enable or disable TLS versions. Treating it as a separate security configuration is redundant and reflects a common misconception that TLS is optional or needs to be enabled, whereas it is already the default for all API calls.
- ✗
Implement client-side encryption before writing items to DynamoDB.
Why it's wrong here
Client-side encryption would encrypt items before they leave the application, protecting data even if the network or server-side configuration were compromised, but it is not required when server-side encryption at rest and HTTPS are already in place. It also introduces key management complexity, because the client must manage its own encryption keys and the encrypted attributes become opaque to DynamoDB queries such as filtering and indexing. Therefore, it is an optional defense-in-depth measure, not a necessary or mandated control for this requirement.
Quick reference
AWS S3 Storage Class Comparison
| Storage Class | Min Duration | Retrieval | Use Case |
|---|---|---|---|
| S3 Standard | None | Immediate | Frequently accessed data |
| S3 Standard-IA | 30 days | Immediate | Infrequent access, rapid retrieval |
| S3 One Zone-IA | 30 days | Immediate | Non-critical infrequent data |
| S3 Intelligent-Tiering | None | Immediate–hours | Unknown or changing access patterns |
| S3 Glacier Instant | 90 days | Milliseconds | Archive with instant retrieval |
| S3 Glacier Flexible | 90 days | Minutes–hours | Archive, flexible retrieval |
| S3 Glacier Deep Archive | 180 days | Hours | Long-term compliance archive |
About these practice questions
Courseiva creates original exam-style practice questions with explanations and wrong-answer analysis. It does not publish real exam questions, exam dumps, or protected exam content. Learn why practice questions differ from exam dumps →
Last reviewed: Jun 20, 2026
This DVA-C02 practice question is part of Courseiva's free Amazon Web Services certification practice question bank. Courseiva provides original exam-style practice questions with explanations, topic-based practice, mock exams, readiness tracking, and study analytics to help learners prepare for the DVA-C02 exam.
Question Discussion
Share a tip, memory trick, or ask about the reasoning behind this question. Do not post real exam questions, leaked content, braindumps, or copyrighted exam material. Comments are moderated and may be removed without notice.
Sign in to join the discussion.