SAA-C03 domain - 30% of the exam

Design Secure Architectures

Design Secure Architectures is 30% of the AWS Certified Solutions Architect - Associate (SAA-C03) exam. These are the objectives it covers, each with practice questions and worked explanations.

Objectives in this domain

Sample question from this domain

Free sampleDesign Secure Architecturesmedium

A company runs an application on Amazon EC2 instances that must read objects from a specific Amazon S3 bucket. Developers currently store long-lived IAM user access keys in the application configuration file. A solutions architect must remove the static credentials while granting only the access the application needs. Which approach best meets these requirements?

  • AAttach an IAM role to the EC2 instances with a policy that allows the s3:GetObject action on the specific bucket, and have the application use the role credentials. Correct
  • BCreate an IAM user with an S3 read-only managed policy and embed its access key and secret key in the EC2 instance user data at launch.
  • CAttach an IAM role to the EC2 instances that grants the AdministratorAccess managed policy so the application can reach the bucket without stored keys.
  • DStore the IAM user access keys in AWS Secrets Manager and have the running application retrieve the same long-lived keys at startup.
Use IAM roles with instance profiles to give EC2 workloads scoped temporary credentials instead of storing long-lived access keys. An IAM role attached through an instance profile delivers short-lived credentials retrieved from the instance metadata service and rotated automatically, eliminating static keys, while a resource-scoped s3:GetObject policy enforces least privilege.

Why A is correct: An instance profile role supplies automatically rotated temporary credentials and a scoped GetObject policy on one bucket grants least privilege without any static keys.

Why B is wrong: Moving the key to user data still relies on long-lived static credentials that can leak, so it fails the requirement to remove static credentials entirely.

Why C is wrong: A role does remove static keys, but AdministratorAccess grants far more than the read access needed and violates the least-privilege requirement badly.

Why D is wrong: Secrets Manager protects the keys at rest, but the application still authenticates with long-lived IAM user credentials rather than removing them as required.

Other domains in this exam

See also the SAA-C03 cert hub, the study guide, and the cheat sheet.

Examworthy is not affiliated with or endorsed by Amazon Web Services. Original, blueprint-aligned practice material only.