SAP-C02 Design for New Solutions Practice Question
A company is designing a data lake on Amazon S3. The data is ingested from multiple sources and must be encrypted at rest using customer-managed keys. The company also needs to audit all access to the data lake. Which combination of services should be used?
⚠ Common exam trap
It's easy for candidates to confuse S3 server access logs (which are log files delivered to an S3 bucket) with CloudTrail data events, or assume SSE-S3 meets the 'customer-managed keys' requirement because it is a form of server-side encryption, but SSE-S3 uses AWS-owned keys, not customer-managed ones.
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
✓
Configure S3 bucket encryption with SSE-KMS using a customer-managed CMK. Enable AWS CloudTrail with data events for S3 and KMS.
It uses SSE-KMS with a customer-managed CMK to meet the encryption-at-rest requirement with customer-controlled keys, and enables AWS CloudTrail with data events for both S3 and KMS to audit all access to the data lake. This combination provides granular auditing of every S3 object-level operation (e.g., GetObject, PutObject) and every KMS key usage (e.g., Decrypt, GenerateDataKey), which is essential for compliance and security monitoring.
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 S3 bucket encryption with SSE-S3. Enable S3 server access logs.
Why it's wrong here
SSE-S3 encrypts with AWS-owned keys rather than customer-managed keys, and S3 server access logs record bucket-level requests, not the object-level audit trail needed. It is tempting because server access logs are the classic native S3 logging mechanism and SSE-S3 requires no key management.
- ✓
Configure S3 bucket encryption with SSE-KMS using a customer-managed CMK. Enable AWS CloudTrail with data events for S3 and KMS.
Why this is correct
SSE-KMS with a customer-managed CMK satisfies the customer-managed key requirement, while CloudTrail data events capture object-level S3 access and KMS key usage. Together they provide encryption at rest plus the audit trail of all data lake access.
- ✗
Enable S3 default encryption with SSE-S3. Enable Amazon CloudWatch Logs for S3 access logging.
Why it's wrong here
SSE-S3 uses AWS-managed keys, not customer-managed keys, so the encryption requirement fails; CloudWatch Logs also does not capture S3 data-plane access events. It is tempting because SSE-S3 is the zero-configuration default, and CloudWatch is the usual destination for service logs.
- ✗
Use client-side encryption with a customer-managed key. Enable Amazon CloudWatch Logs for S3 access logs.
Why it's wrong here
Client-side encryption removes the key from S3's control, so S3 cannot decrypt for auditing or analytics, and CloudWatch Logs does not receive S3 access events. It is tempting because client-side encryption genuinely uses customer-managed keys, satisfying the encryption half of the 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 |
Go deeper
Related to this question
About these practice questions
This SAP-C02 question is part of Courseiva's 984-question bank — original exam-style content with full explanations and wrong-answer analysis, never real exam questions or exam dumps. Learn why practice questions differ from exam dumps →
Same concept, more angles
5 more ways this is tested on SAP-C02
These questions test the same concept from different angles. Work through them to make sure you can recognise it however the exam phrases it.
Variation 1. A company is building a data lake on Amazon S3. The data comes from various sources and must be encrypted at rest. The security policy requires that the encryption keys be managed by the company and rotated annually. Which TWO solutions meet these requirements? (Choose two.)
easy- ✓ A.Use server-side encryption with customer-provided keys (SSE-C)
- B.Use server-side encryption with S3 managed keys (SSE-S3)
- ✓ C.Use server-side encryption with AWS KMS managed keys (SSE-KMS) with a customer managed key
- D.Enable default encryption on the S3 bucket with SSE-S3
- E.Use client-side encryption with the Amazon S3 encryption client
Why A: Option A (SSE-C) is correct because with server-side encryption using customer-provided keys, the company supplies and fully controls the encryption keys on every request, and S3 never stores them, so the company can rotate them annually per its own policy. Option C (SSE-KMS with a customer managed key) is correct because a customer managed KMS key is created, owned, and rotated by the company (automatic annual rotation can be enabled), satisfying both the company-managed key and annual rotation requirements. Option B (SSE-S3) is not correct because S3 fully manages and rotates the keys, so the company does not control them. Option D (default bucket encryption with SSE-S3) is not correct for the same reason—keys are AWS-managed, not company-managed. Option E (client-side encryption with the S3 encryption client) is not correct because it does not use S3 server-side encryption with company-managed keys as specified, and key management/rotation would fall outside the described SSE key-management model.
Variation 2. A healthcare company is storing sensitive patient data in Amazon S3. The compliance team requires that all data be encrypted at rest and that the encryption keys be rotated every 90 days. Additionally, the company must maintain an audit trail of all key usage. Which solution meets these requirements with the LEAST operational overhead?
hard- A.Use S3 server-side encryption with customer-provided keys (SSE-C) and implement a Lambda function to rotate keys every 90 days.
- B.Use S3 server-side encryption with S3-managed keys (SSE-S3) and enable S3 server access logs.
- C.Use S3 server-side encryption with AWS KMS-managed keys (SSE-KMS) and enable automatic key rotation every 90 days. Enable AWS CloudTrail for KMS key usage logging.
- ✓ D.Use client-side encryption with the AWS Encryption SDK and store the keys in AWS Secrets Manager with automatic rotation.
Why D: Meets all requirements with the least operational overhead. Client-side encryption with the AWS Encryption SDK ensures data is encrypted at rest. Keys are stored in AWS Secrets Manager, which supports automatic rotation on a custom 90-day schedule. CloudTrail logs all Secrets Manager API calls, providing an audit trail of key usage. Option A requires custom Lambda code for rotation. Option B uses SSE-S3, which cannot be rotated on a 90-day schedule and lacks key usage audit. Option C uses SSE-KMS, but automatic rotation for customer managed keys is fixed at 365 days, failing the 90-day requirement.
Variation 3. A company is designing a new data lake on Amazon S3. The data must be encrypted at rest using envelope encryption with AWS KMS. The company wants to use an AWS managed key that rotates annually. Which TWO components are required for this design? (Choose TWO.)
hard- ✓ A.AWS KMS data key
- B.AWS KMS customer managed key
- C.AWS Certificate Manager
- D.AWS CloudHSM
- ✓ E.Amazon S3 bucket with SSE-KMS enabled
Why A: Option A (AWS KMS data key) is correct because envelope encryption requires generating a unique data key from KMS to encrypt the actual data; the plaintext data key encrypts the objects while the encrypted copy of the data key is stored alongside the data. Option E (Amazon S3 bucket with SSE-KMS enabled) is correct because SSE-KMS is the S3 server-side encryption mode that integrates with AWS KMS to perform envelope encryption automatically, using KMS keys to protect the data keys. Option B is not required because the scenario specifies an AWS managed key (aws/s3), not a customer managed key, and AWS managed keys rotate annually by default. Option C is incorrect because AWS Certificate Manager manages TLS/SSL certificates for data in transit, not encryption at rest. Option D is incorrect because AWS CloudHSM is a dedicated hardware security module service and is not needed when using AWS KMS managed keys for S3 envelope encryption.
Variation 4. A company is designing a data lake on Amazon S3. Data is ingested from multiple sources and stored as Parquet files partitioned by date. The company needs to ensure that only authorized users can access the data, and that the data is encrypted at rest. Which TWO actions should the company take to meet these requirements? (Choose TWO.)
medium- ✓ A.Enable default encryption with SSE-KMS on the S3 bucket.
- B.Use client-side encryption before uploading to S3.
- C.Enable S3 server access logging.
- D.Use a bucket ACL to grant access to the data lake.
- ✓ E.Configure an S3 bucket policy that allows access only from specific IAM roles.
Why A: Option A is correct because enabling default encryption with SSE-KMS on the S3 bucket ensures all objects are encrypted at rest using AWS KMS-managed keys, satisfying the encryption requirement without relying on each uploader to set encryption headers. Option E is correct because an S3 bucket policy that allows access only from specific IAM roles enforces least-privilege authorization, ensuring that only the intended IAM principals can read or write the Parquet data. Option B is not required because server-side encryption with SSE-KMS already meets the encryption-at-rest requirement, and client-side encryption adds key-management complexity without being mandated. Option C is incorrect because S3 server access logging only records request activity for auditing; it does not control access or encrypt data. Option D is incorrect because bucket ACLs are legacy, coarse-grained access mechanisms and cannot express the fine-grained, role-based authorization that a bucket policy provides.
Variation 5. A company is designing a new data lake on Amazon S3. The data is ingested from various sources and must be encrypted at rest. The company has a strict requirement to use an AWS KMS customer master key (CMK) that is stored in a different AWS account for additional security. The S3 bucket is in Account A, and the KMS key is in Account B. Which steps are necessary to enable server-side encryption with AWS KMS (SSE-KMS) for objects in the S3 bucket?
hard- A.Enable SSE-KMS on the S3 bucket in Account A and specify the ARN of the KMS key from Account B. S3 will automatically use the key.
- B.Update the KMS key policy in Account B to grant Account A access to the key. No changes needed in Account A.
- ✓ C.Update the KMS key policy in Account B to grant Account A access to the key, and update the S3 bucket policy in Account A to allow the kms:Encrypt and kms:Decrypt actions for the key.
- D.Update the S3 bucket policy in Account A to allow s3:PutObject with the kms:Encrypt permission. No changes needed in Account B.
Why C: When using an AWS KMS CMK from a different account (Account B) for SSE-KMS on an S3 bucket in Account A, you must explicitly grant Account A access to the key via the KMS key policy in Account B. Additionally, the S3 bucket policy in Account A must allow the kms:Encrypt and kms:Decrypt actions for the cross-account key, as S3 will use these permissions to encrypt and decrypt objects on behalf of the bucket owner. Without both policy updates, the cross-account KMS operation will fail with an access denied error.
JA
Written by Johnson Ajibi, MSc IT Security
Senior Network & Security Engineer · founder of Courseiva
This SAP-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 SAP-C02 exam.