SAP-C02 Practice Question: Design Solutions for Organizational Complexity
A multinational company operates a multi-account AWS environment using AWS Organizations. The security team needs to enforce that all Amazon S3 buckets are encrypted at rest using AWS KMS customer managed keys (CMKs) and that no bucket policies allow anonymous access. What is the MOST efficient way to achieve this across all accounts?
⚠ Common exam trap
Many exam-takers choose reactive detective controls (like AWS Config with auto-remediation) because they seem comprehensive, but the question asks for the 'most efficient' way, which is a proactive preventive control using SCPs that blocks non-compliant actions before they happen.
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 AWS Organizations service control policies (SCPs) that deny PutBucketPolicy with anonymous effects and PutObject without encryption.
AWS Organizations Service Control Policies (SCPs) can centrally enforce restrictions across all accounts in the organization without requiring per-account configuration. By creating SCPs that deny `s3:PutBucketPolicy` actions with an anonymous effect (using a condition key like `aws:SourceAccount` or inspecting the policy content) and deny `s3:PutObject` without the `x-amz-server-side-encryption-aws:kms` header, the security team ensures that no bucket can be made publicly accessible and no object can be uploaded without KMS encryption. This approach is the most efficient because it applies globally and proactively prevents non-compliant actions rather than detecting them after the fact.
Answer analysis
Option-by-option breakdown
For each option: why learners choose it and why it is or isn't the right answer here.
- ✗
Create IAM roles in each account that deny non-encrypted S3 operations and attach to all users.
Why it's wrong here
IAM roles cannot enforce policies on the root user and require manual setup per account.
- ✓
Create AWS Organizations service control policies (SCPs) that deny PutBucketPolicy with anonymous effects and PutObject without encryption.
Why this is correct
SCPs centrally enforce restrictions across all accounts, covering all users including root.
- ✗
Use S3 bucket policies with Deny statements for anonymous access and missing encryption.
Why it's wrong here
Bucket policies must be applied to each bucket individually, which is not efficient for many buckets.
- ✗
Deploy AWS Config rules to detect unencrypted buckets and anonymous access, with auto-remediation using Lambda.
Why it's wrong here
Config rules are detective, not preventive; remediation may have delays and not prevent initial violations.
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
One of 1,660 original SAP-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 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 has a multi-account AWS environment using AWS Organizations. The security team wants to enforce that all S3 buckets in the organization are encrypted at rest. Which TWO approaches can the company use to achieve this? (Choose TWO.)
medium- A.Attach a bucket policy to each bucket that denies PutObject without encryption.
- ✓ B.Create a service control policy (SCP) that denies s3:CreateBucket unless the bucket has default encryption enabled.
- C.Create an IAM policy that denies s3:PutObject unless encryption is specified.
- D.Enable S3 Block Public Access at the organization level.
- ✓ E.Use AWS Config rules to detect S3 buckets without encryption and automatically apply encryption.
Why B: A service control policy (SCP) can be applied at the organization, organizational unit (OU), or account level to deny the s3:CreateBucket action unless the request includes the x-amz-bucket-object-lock-enabled header or the bucket is created with default encryption enabled. This enforces encryption at rest for all new S3 buckets across the entire organization. Option E is correct because AWS Config rules can evaluate existing S3 buckets for encryption compliance and trigger an automatic remediation action, such as enabling default encryption via AWS Systems Manager Automation, ensuring both new and existing buckets are encrypted.
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.