How to Prevent Accidental KMS Key Deletion
A company uses AWS Key Management Service (KMS) to encrypt data. The security team needs to ensure that KMS keys cannot be deleted accidentally. Which action should be taken?
Quick Answer
KMS keys are not deleted directly; they go through a mandatory waiting period initiated by the kms:ScheduleKeyDeletion action, so the lever for preventing accidental deletion is controlling who is allowed to call that specific action, rather than looking for some separate deletion-protection toggle. An IAM policy, whether attached directly to the key as a key policy or to the users and roles that would otherwise have permission, can explicitly deny kms:ScheduleKeyDeletion, blocking the deletion process from ever being initiated regardless of what other permissions a principal holds. This is a useful pattern to recognize generally: AWS security questions often ask you to find the specific API action that gates a dangerous or irreversible operation, and the correct control is almost always a deny targeting that exact action rather than a broader setting. It also helps to know what the near-miss options do: automatic key rotation only changes the underlying cryptographic material on a schedule and has nothing to do with deletion, and KMS does not expose a simple deletion-protection switch the way some other resources do; protection comes purely through policy-based denial. Whenever a question asks how to prevent an irreversible action on an AWS resource, look first for the specific API call that initiates it, since the answer is usually a deny statement targeting that exact permission rather than a feature toggle.
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
✓
Create an IAM policy that denies kms:ScheduleKeyDeletion for the key.
To prevent accidental deletion of KMS keys, you must deny the kms:ScheduleKeyDeletion permission. An IAM policy attached to the key (key policy) or to the user/role can explicitly deny this action. Option B is correct because it directly denies the permission needed to schedule deletion. Option A (SCP denying kms:ScheduleKeyDeletion) can be used at the organizational level but is not the most direct per-key control. Option C (automatic key rotation) does not prevent deletion. Option D is invalid because KMS does not have a deletion protection toggle; protection is achieved through IAM/key policies.
Answer analysis
Option-by-option breakdown
For each option: why learners choose it and why it is or isn't the right answer here.
- ✗
Apply an SCP that denies kms:ScheduleKeyDeletion for all accounts.
Why it's wrong here
This is overly broad and may be effective but is not the most targeted; also SCPs apply to all IAM principals in the account, but the question does not specify organization.
- ✓
Create an IAM policy that denies kms:ScheduleKeyDeletion for the key.
Why this is correct
This prevents authorized users from scheduling key deletion.
- ✗
Enable automatic key rotation.
Why it's wrong here
Rotation does not prevent deletion.
- ✗
Enable deletion protection on the key.
Why it's wrong here
KMS does not have a deletion protection feature.
Go deeper
Related to this question
About these practice questions
One of 376 original SCS-C02 practice questions on Courseiva, each with a full explanation and wrong-answer analysis — not exam dumps or protected exam content. Learn why practice questions differ from exam dumps →
Same concept, more angles
1 more way 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 needs to ensure that KMS keys cannot be deleted accidentally. Which TWO actions should be taken? (Choose TWO.)
medium- ✓ A.Attach an SCP that denies kms:ScheduleKeyDeletion for all accounts.
- B.Enable CloudTrail to log key deletion events.
- C.Enable automatic key rotation.
- ✓ D.Modify the key policy to deny kms:ScheduleKeyDeletion for all principals.
- E.Disable the key to prevent usage.
Why A: Options A and D are correct. Attaching a service control policy (SCP) that denies kms:ScheduleKeyDeletion at the organizational level (A) and modifying the key policy to deny kms:ScheduleKeyDeletion for all principals (D) are both preventive controls that protect KMS keys from accidental deletion. Option B (CloudTrail) is detective, not preventive. Option C (key rotation) does not affect deletion permissions. Option E (disabling the key) prevents usage but does not prevent deletion; the key can still be deleted while disabled.
JA
Written by Johnson Ajibi, MSc IT Security
Senior Network & Security Engineer · founder of Courseiva
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.