Question 546 of 1,040
Design Secure ArchitectureshardMultiple ChoiceObjective-mapped

Quick Answer

The answer is to update the CMK key policy or add a tightly scoped grant for the partner role. This is required because when using SSE-KMS with a customer-managed key in a cross-account S3 setup, the KMS key policy acts as the primary access control—S3 bucket policies alone cannot authorize KMS actions. Even with correct S3 permissions, the partner workload fails because KMS does not trust the partner account’s IAM role unless the key policy explicitly allows kms:Decrypt and kms:GenerateDataKey for that role, enabling S3 to perform encryption and decryption on its behalf. On the SAA-C03 exam, this scenario tests your understanding that cross-account KMS access requires a resource-based policy on the key, not just an identity-based policy on the role. A common trap is assuming the bucket policy is sufficient, but KMS enforces its own authorization layer. Memory tip: “Key policy first, bucket policy second—KMS is the gatekeeper for SSE-KMS.”

SAA-C03 Design Secure Architectures Practice Question

This SAA-C03 practice question tests your understanding of design secure architectures. This is a configuration task: choose the command set that satisfies every stated requirement. Small differences — like 'secret' vs 'password' or 'transport input ssh' vs 'all' — change whether the answer is correct. A key principle to apply: sSE-KMS requires both S3 object permissions and KMS key permissions for access.. Once you have made your selection, read the full explanation to reinforce the concept and understand why each distractor is designed to mislead on exam day.

Exhibit

CloudTrail event summary:
- eventSource: kms.amazonaws.com
- eventName: Decrypt
- errorCode: AccessDeniedException
- userIdentity: arn:aws:sts::444455556666:assumed-role/PartnerUploadRole/partner-app
- requestParameters.keyId: arn:aws:kms:us-east-1:111122223333:key/6b2f-9a7c

Current CMK key policy excerpt in account 111122223333:
{
  "Sid": "EnableRootPermissionsOnly",
  "Effect": "Allow",
  "Principal": { "AWS": "arn:aws:iam::111122223333:root" },
  "Action": "kms:*",
  "Resource": "*"
}

Based on the exhibit, a partner account uploads encrypted objects to a central S3 bucket and later reads them back. The S3 permissions are correct, but the requests still fail. What change is required so the partner workload can use the customer-managed KMS key safely?

Question 1hardmultiple choice
Full question →

Exhibit

CloudTrail event summary:
- eventSource: kms.amazonaws.com
- eventName: Decrypt
- errorCode: AccessDeniedException
- userIdentity: arn:aws:sts::444455556666:assumed-role/PartnerUploadRole/partner-app
- requestParameters.keyId: arn:aws:kms:us-east-1:111122223333:key/6b2f-9a7c

Current CMK key policy excerpt in account 111122223333:
{
  "Sid": "EnableRootPermissionsOnly",
  "Effect": "Allow",
  "Principal": { "AWS": "arn:aws:iam::111122223333:root" },
  "Action": "kms:*",
  "Resource": "*"
}

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

Update the CMK key policy, or add a tightly scoped grant, to allow the partner role the required KMS actions through S3.

Option D is correct because when using a customer-managed KMS key (CMK) for SSE-KMS in a cross-account scenario, the key policy must explicitly grant the partner account's IAM role the necessary KMS actions (kms:Decrypt, kms:GenerateDataKey) to allow S3 to perform the encryption/decryption on behalf of the partner. Without this policy update or a tightly scoped grant, the KMS service will deny the request even if S3 bucket policies are correctly configured.

Key principle: SSE-KMS requires both S3 object permissions and KMS key permissions for access.

Answer analysis

Option-by-option breakdown

For each option: why learners choose it and why it is or isn't the right answer here.

  • Replace SSE-KMS with S3 object ACLs so the partner account can bypass KMS authorization.

    Why it's wrong here

    ACLs control S3 object access, not KMS cryptographic authorization. The error is coming from KMS decrypt operations, so ACL changes would not solve it.

  • Create a new bucket in the partner account and copy the objects there to avoid cross-account encryption.

    Why it's wrong here

    Moving the data would avoid the immediate trust problem, but it is an architectural workaround, not the required fix. It adds duplication, cost, and operational complexity without addressing the KMS sharing requirement.

  • Switch the bucket to SSE-S3 so the partner role no longer needs KMS permissions.

    Why it's wrong here

    SSE-S3 removes customer-managed key control, which may violate security or compliance requirements. The scenario requires safe use of the customer-managed KMS key, not eliminating it.

  • Update the CMK key policy, or add a tightly scoped grant, to allow the partner role the required KMS actions through S3.

    Why this is correct

    Cross-account access to SSE-KMS encrypted objects requires KMS authorization in addition to S3 authorization. The key policy must trust the partner role, and the permissions should be limited to the needed KMS actions such as Decrypt, Encrypt, and GenerateDataKey with a service condition for S3. That is why the partner can have valid S3 permissions and still fail until the KMS policy is fixed.

    Related concept

    SSE-KMS requires both S3 object permissions and KMS key permissions for access.

Common exam traps

Common exam trap: answer the scenario, not the keyword

The trap here is that candidates assume S3 bucket policies alone control all access, forgetting that SSE-KMS introduces a separate authorization layer at KMS that requires explicit cross-account permissions in the key policy.

Trap categories for this question

  • Scenario analysis trap

    SSE-S3 removes customer-managed key control, which may violate security or compliance requirements. The scenario requires safe use of the customer-managed KMS key, not eliminating it.

Detailed technical explanation

How to think about this question

Under the hood, when S3 receives a request to upload or read an object encrypted with SSE-KMS, it calls KMS on behalf of the requester using the requester's credentials. For cross-account access, the CMK key policy must include a statement allowing the external principal (the partner role) to perform kms:Decrypt and kms:GenerateDataKey, and the partner account's IAM policy must also grant those actions. A common real-world scenario is a data lake where multiple accounts contribute encrypted data; without proper key policy configuration, all cross-account operations fail with an 'Access Denied' error from KMS, not S3.

KKey Concepts to Remember

  • SSE-KMS requires both S3 object permissions and KMS key permissions for access.
  • KMS key policies define who can use the CMK and for which cryptographic operations.
  • Cross-account access to SSE-KMS objects needs explicit KMS key policy grants for the external principal.
  • KMS grants offer a more granular, temporary, or condition-based alternative to key policy statements.

TExam Day Tips

  • Watch for words such as best, first, most likely and least administrative effort.
  • Review why wrong options are wrong, not only why the correct option is correct.

Key takeaway

SSE-KMS requires both S3 object permissions and KMS key permissions for access.

Real-world example

How this comes up in practice

A media company stores terabytes of video archives that are accessed once a year for audit purposes. Moving these objects to a cold storage tier (Azure Archive, S3 Glacier, or Google Nearline) costs a fraction of hot storage. Questions like this test whether you understand storage tiers, access frequency tradeoffs, and retrieval latency requirements.

What to study next

Got this wrong? Here's your next step.

Review sSE-KMS requires both S3 object permissions and KMS key permissions for access., then practise related SAA-C03 questions on the same topic to reinforce the concept.

Related practice questions

Related SAA-C03 practice-question pages

Use these pages to review the topic behind this question. This is how one missed question becomes focused revision.

Practice this exam

Start a free SAA-C03 practice session

Short sessions build daily habit. Longer sessions build exam-day stamina. Try a timed session to simulate real conditions.

FAQ

Questions learners often ask

What does this SAA-C03 question test?

Design Secure Architectures — This question tests Design Secure Architectures — SSE-KMS requires both S3 object permissions and KMS key permissions for access..

What is the correct answer to this question?

The correct answer is: Update the CMK key policy, or add a tightly scoped grant, to allow the partner role the required KMS actions through S3. — Option D is correct because when using a customer-managed KMS key (CMK) for SSE-KMS in a cross-account scenario, the key policy must explicitly grant the partner account's IAM role the necessary KMS actions (kms:Decrypt, kms:GenerateDataKey) to allow S3 to perform the encryption/decryption on behalf of the partner. Without this policy update or a tightly scoped grant, the KMS service will deny the request even if S3 bucket policies are correctly configured.

What should I do if I get this SAA-C03 question wrong?

Review sSE-KMS requires both S3 object permissions and KMS key permissions for access., then practise related SAA-C03 questions on the same topic to reinforce the concept.

What is the key concept behind this question?

SSE-KMS requires both S3 object permissions and KMS key permissions for access.

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 →

How Courseiva writes practice questions · Editorial policy

Same concept, more angles

1 more ways this is tested on SAA-C03

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. Based on the exhibit, a partner account uploads encrypted objects to a central S3 bucket and later reads them back. The S3 permissions are correct, but the requests still fail. What change is required so the partner workload can use the customer-managed KMS key safely?

hard
  • A.Replace SSE-KMS with S3 object ACLs so the partner account can bypass KMS authorization.
  • B.Create a new bucket in the partner account and copy the objects there to avoid cross-account encryption.
  • C.Switch the bucket to SSE-S3 so the partner role no longer needs KMS permissions.
  • D.Update the CMK key policy, or add a tightly scoped grant, to allow the partner role the required KMS actions through S3.

Why D: The correct answer is D because when using a customer-managed KMS key (CMK) for SSE-KMS in a cross-account scenario, the key policy must explicitly grant the partner account's IAM role the necessary KMS actions (kms:Decrypt, kms:GenerateDataKey) to allow S3 to perform the encryption/decryption on behalf of the partner. Without this policy update or a tightly scoped grant, S3 cannot authorize the KMS operation even if the S3 bucket policy permits the upload/read.

Last reviewed: Jun 11, 2026

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.

Loading comments…

Sign in to join the discussion.

This SAA-C03 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 SAA-C03 exam.