Question 557 of 1,748
Data ProtectionmediumMultiple ChoiceObjective-mapped

Restrict KMS Key Access to a Specific IAM Role

This SCS-C02 practice question tests your understanding of data protection. The scenario asks you to isolate a root cause — eliminate options that address a different problem before choosing. A key principle to apply: kMS key policy. 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.

A company is using AWS KMS to encrypt S3 objects. The security team wants to ensure that only a specific IAM role can decrypt objects in a particular S3 bucket. Which KMS key policy configuration should be used?

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

Add a condition that allows decrypt only when kms:ViaService is s3.amazonaws.com and the caller role matches the specific role ARN.

Option A is correct because the KMS key policy can include a condition that restricts decrypt to requests from S3 (kms:ViaService) and requires the caller role to match the specific IAM role ARN (aws:PrincipalArn). Option B is incorrect because S3 bucket policies cannot control KMS decrypt permissions; KMS actions are governed by KMS key policies and IAM policies. Option C is incorrect because while the IAM role can be allowed via IAM policy, the KMS key policy must also grant the role permission, and additional conditions are needed to restrict to S3. Option D is incorrect because S3 bucket policies cannot grant KMS decrypt permissions; only KMS key policies and IAM policies can.

Key principle: KMS key policy

Answer analysis

Option-by-option breakdown

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

  • Add a condition that allows decrypt only when kms:ViaService is s3.amazonaws.com and the caller role matches the specific role ARN.

    Why this is correct

    Add a condition that allows decrypt only when kms:ViaService is s3.amazonaws.com and the caller role matches the specific role ARN using aws:PrincipalArn condition key.

    Related concept

    KMS key policy

  • Use an S3 bucket policy that denies decrypt for all principals except the specific IAM user.

    Why it's wrong here

    Incorrect. S3 bucket policies cannot deny or allow KMS actions. KMS decrypt permissions are controlled by KMS key policies and IAM policies. Additionally, the option mentions an IAM user, not a role.

  • Configure the IAM role with a policy that allows kms:Decrypt for the specific KMS key.

    Why it's wrong here

    Incorrect. While the IAM role can be granted kms:Decrypt via an IAM policy, the KMS key policy must also allow the role. Moreover, this approach does not restrict the decrypt to S3 only; additional conditions like kms:ViaService are needed.

  • Attach a resource-based policy to the S3 bucket that grants decrypt permission to the IAM role.

    Why it's wrong here

    Incorrect. S3 bucket policies are resource-based policies for S3 actions, not for KMS actions. They cannot grant KMS decrypt permissions. Only KMS key policies (or IAM policies with key policy allow) can grant KMS decrypt.

Common exam traps

Common exam trap: answer the scenario, not the keyword

Many certification questions include familiar terms but test a specific constraint. Read the exact wording before choosing an answer that is generally true but wrong for this case.

Detailed technical explanation

How to think about this question

Treat this as a scenario question. Identify the problem, the constraint, and the best action. Then compare each option against those facts.

KKey Concepts to Remember

  • KMS key policy
  • kms:ViaService
  • aws:PrincipalArn
  • Condition block

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

KMS key policy

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.

Quick reference

AWS S3 Storage Class Comparison

Storage ClassMin DurationRetrievalUse Case
S3 StandardNoneImmediateFrequently accessed data
S3 Standard-IA30 daysImmediateInfrequent access, rapid retrieval
S3 One Zone-IA30 daysImmediateNon-critical infrequent data
S3 Intelligent-TieringNoneImmediate–hoursUnknown or changing access patterns
S3 Glacier Instant90 daysMillisecondsArchive with instant retrieval
S3 Glacier Flexible90 daysMinutes–hoursArchive, flexible retrieval
S3 Glacier Deep Archive180 daysHoursLong-term compliance archive

What to study next

Got this wrong? Here's your next step.

Review kMS key policy, then practise related SCS-C02 questions on the same topic to reinforce the concept.

Related practice questions

Related SCS-C02 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 SCS-C02 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 SCS-C02 question test?

Data Protection — This question tests Data Protection — KMS key policy.

What is the correct answer to this question?

The correct answer is: Add a condition that allows decrypt only when kms:ViaService is s3.amazonaws.com and the caller role matches the specific role ARN. — Option A is correct because the KMS key policy can include a condition that restricts decrypt to requests from S3 (kms:ViaService) and requires the caller role to match the specific IAM role ARN (aws:PrincipalArn). Option B is incorrect because S3 bucket policies cannot control KMS decrypt permissions; KMS actions are governed by KMS key policies and IAM policies. Option C is incorrect because while the IAM role can be allowed via IAM policy, the KMS key policy must also grant the role permission, and additional conditions are needed to restrict to S3. Option D is incorrect because S3 bucket policies cannot grant KMS decrypt permissions; only KMS key policies and IAM policies can.

What should I do if I get this SCS-C02 question wrong?

Review kMS key policy, then practise related SCS-C02 questions on the same topic to reinforce the concept.

What is the key concept behind this question?

KMS key policy

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

2 more ways this is tested on SCS-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 uses AWS KMS to encrypt sensitive data. The security team wants to ensure that KMS keys are not used by unauthorized principals. Which TWO measures should be implemented? (Choose TWO.)

medium
  • A.Define a key policy that grants kms:Encrypt and kms:Decrypt only to specific IAM roles.
  • B.Delete any KMS keys that are not used for more than 90 days.
  • C.Create aliases for frequently used keys.
  • D.Grant kms:* permissions to all IAM users in the account.
  • E.Enable automatic key rotation for all customer managed keys.

Why A: Using key policies to restrict which IAM roles can use the key (Option A) and enabling automatic key rotation to limit the window of compromise (Option E) are effective. Granting broad access (Option D) is not recommended. Deleting unused keys (Option B) does not prevent unauthorized use of remaining keys. Creating aliases (Option C) does not control access.

Variation 2. A company uses AWS KMS to encrypt EBS volumes. They want to ensure that the key used for EBS encryption is not shared across different AWS accounts. Which feature should they use?

hard
  • A.Use a CloudHSM custom key store.
  • B.Use the key's alias to restrict access.
  • C.Enable automatic key rotation.
  • D.Configure the key policy to deny access to any principal from another AWS account.

Why D: Option D is correct because AWS KMS key policies can explicitly deny access to principals from other AWS accounts by using the `aws:SourceAccount` or `aws:SourceArn` condition keys, or by specifying a `Deny` statement with a condition that checks the account ID. This ensures that the KMS key used for EBS encryption cannot be used by any IAM principal or role from a different AWS account, preventing cross-account key sharing.

Keep practising

More SCS-C02 practice questions

Last reviewed: Jun 20, 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 SCS-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 SCS-C02 exam.