AWS Solutions Architect Associate SAA-C03 Sign in Try 10 free questions

AWS Secrets Manager: SAA-C03 credential scenarios

How the exam draws the line between storing a secret, rotating it, and reaching it without a hard-coded key. Seven scenarios, SAA-C03, 2026 edition.

Try 7 free Secrets Manager scenarios in the exam's own style — every answer explained, no sign-up.

Straight to the 7 free questions ↓

Secrets on the SAA-C03 are less about one service and more about three separable questions: where the secret is stored, whether it rotates, and how the application reaches it without a hard-coded key. Answer those independently and the distractors — a plaintext environment variable, a stored access key, a config store with no rotation — sort themselves out. The diagram traces the whole path: an application assumes an IAM role, calls Secrets Manager for a KMS-encrypted secret that rotation keeps current on the database, while the crossed-out branch shows the hard-coded credential the design exists to eliminate.

Storage: Secrets Manager vs Parameter Store

Both AWS Systems Manager Parameter Store and AWS Secrets Manager store values encrypted with KMS. The line the exam draws is rotation and cost. Secrets Manager provides built-in, scheduled rotation and charges per secret. Parameter Store’s SecureString encrypts with KMS at no per-secret charge in the standard tier, but has no built-in rotation. So a static, encrypted value — a config string, a token that never expires — belongs in a SecureString; a credential that must rotate belongs in Secrets Manager. Hard-coding into code or environment variables is never the answer, and the exam includes it only as the anti-pattern to reject.

Rotation: the RDS case

The strongest reason to pay for Secrets Manager is managed rotation for supported databases. For Amazon RDS, Secrets Manager provisions the rotation function, generates a new password, updates it on the database, and updates the secret — on a schedule, with no application downtime, provided the application retrieves the current value at runtime rather than caching a copy forever. When a stem says “rotate every N days, automatically, no downtime, least operational overhead”, that is managed rotation, not a hand-built Lambda that recreates it.

Retrieval: an IAM role, never a stored key

A secure design never stores a long-lived AWS access key to reach Secrets Manager. Instead, the compute — EC2, ECS, or Lambda — assumes an IAM role granting secretsmanager:GetSecretValue, and the SDK retrieves the secret at runtime with the role’s short-lived credentials. Baking the secret into an image or passing it as a plaintext environment variable both freeze a credential into an artifact and lose rotation. The role-plus-runtime-retrieval pattern is the one the exam rewards.

Encryption and cross-account

Every secret is encrypted at rest with KMS. When compliance wants the organization to own the key, select a customer managed KMS key on the secret — that is the whole configuration, and it is the encryption layer under the secret, not a separate key-policy exercise. That same customer managed key is what makes cross-account access possible: the default AWS managed key cannot be shared, so cross-account requires a resource-based policy on the secret naming the other account’s principal plus a customer managed key whose policy lets that principal call kms:Decrypt alongside GetSecretValue.

Performance and cost of retrieval

One operational scenario recurs: a service that calls GetSecretValue on every request and then meets latency, throttling, and cost. The fix is to cache the secret in memory and refresh only on rotation, which the Secrets Manager caching library does for you — not to dodge the API by dropping the value into a plaintext variable, and not to disable rotation.

How to use the seven scenarios below

Answer each before opening the explanation, and when you miss, find the deciding word — “automatically”, “no long-lived key”, “lowest cost”, “another account”. Every explanation names that constraint and takes the distractors apart, most of which are real controls answering a slightly different requirement. For the wider picture, see Design Secure Architectures.

An application on compute assuming an IAM role that grants GetSecretValue, calling AWS Secrets Manager at runtime. Secrets Manager holds a secret encrypted at rest with a KMS key and runs a built-in rotation function that updates both the secret and the credential on the Amazon RDS database it points to. A second, crossed-out path shows a hard-coded credential embedded in application code and environment variables — the anti-pattern the design replaces.

7 free SAA-C03 practice questions

Answers and explanations — no email wall
SAA-C03 Question 1 of 7

An application connects to an Amazon RDS for PostgreSQL database. The security team requires the database password to change every 30 days with no application downtime and no manual steps. Which approach meets this with the least operational overhead?

Answer: A — Store the credential in AWS Secrets Manager and enable its built-in managed rotation for RDS.

Secrets Manager offers built-in, managed rotation for supported databases including RDS: it provisions the rotation Lambda for you, generates the new password, updates it on the database, and updates the secret — all on a schedule, with no downtime. Why not the others: hand-rolling a Lambda and EventBridge schedule recreates exactly what managed rotation gives you for free in effort, the operational overhead the requirement rules out. A Parameter Store SecureString has no built-in scheduled rotation, so a 'calendar reminder' is a manual step. Leaving the password in config and rotating by hand is the anti-pattern the question is steering you away from. Automatic, no-downtime database rotation is managed rotation in Secrets Manager.

SAA-C03 Question 2 of 7

A service reads three values at startup: a public API base URL, a feature-flag string, and a database password that must rotate on a schedule. The team wants encrypted storage where needed but the lowest possible cost. How should the values be stored?

Answer: A — Keep the URL and feature flag in Parameter Store (standard tier, free) and put the rotating database password in Secrets Manager.

Split by requirement: non-secret configuration that never rotates belongs in Parameter Store, whose standard tier is free, and the one value that must rotate belongs in Secrets Manager, which charges per secret but provides the managed rotation the password needs. That pays for rotation only where rotation is required. Why not the others: putting plain configuration in Secrets Manager pays a per-secret charge for values that gain nothing from rotation. Keeping everything in Parameter Store leaves the password without built-in rotation, failing the schedule requirement. Hard-coding into environment variables at build time bakes a credential into artifacts and defeats central management entirely. Match rotation to Secrets Manager and free config to Parameter Store.

SAA-C03 Question 3 of 7

An application running on Amazon ECS must retrieve a database password from AWS Secrets Manager at startup. The security review forbids any long-lived AWS access key from being stored on the task or in its image. What is the correct design?

Answer: A — Assign an IAM task role granting secretsmanager:GetSecretValue and let the AWS SDK retrieve the secret using the role's temporary credentials.

An IAM role attached to the task supplies short-lived, automatically rotated credentials to the SDK, which then calls GetSecretValue — no static key is ever stored anywhere. This is the intended pattern and satisfies 'no long-lived access key'. Why not the others: storing an IAM user's access key in environment variables is precisely the long-lived static credential the review forbids. Baking the secret into the image freezes a credential into an artifact that ships to every registry and cannot be rotated. Passing the password as a plaintext environment variable exposes it in task definitions and logs. Runtime retrieval under an IAM role, never a stored key, is the secure answer.

SAA-C03 Question 4 of 7

Compliance requires that a secret stored in AWS Secrets Manager be encrypted at rest under a customer managed KMS key that the organization controls, rather than the default AWS managed key. How is this configured?

Answer: A — Specify a customer managed KMS key when creating the secret; Secrets Manager encrypts the secret value with that key.

Secrets Manager encrypts every secret at rest with KMS, and you can point a secret at a customer managed key at creation time so the organization owns the key that protects it. That is the whole configuration. Why not the others: moving the secret to an S3 bucket abandons Secrets Manager's rotation and retrieval features to solve a problem the service already handles natively. Base64 is an encoding, not encryption — it protects nothing. And the claim that only the AWS managed key is available is simply false. When a scenario asks for an organization-owned key under a secret, that is a customer managed KMS key selected on the secret itself.

SAA-C03 Question 5 of 7

A secret lives in Secrets Manager in Account A. A Lambda function in Account B must read it at runtime, following least-privilege principles. Which combination makes this work?

Answer: A — Attach a resource-based policy to the secret allowing Account B's role, encrypt the secret with a customer managed KMS key, and grant that role GetSecretValue plus kms:Decrypt on the key.

Cross-account access needs both sides: a resource-based policy on the secret naming the Account B principal, and — because the default AWS managed key cannot be shared across accounts — a customer managed KMS key whose policy lets Account B decrypt. Then the caller needs GetSecretValue and kms:Decrypt. Why not the others: copying the value into another account's Parameter Store creates a stale, unrotated duplicate that drifts the moment the source rotates. Making a secret public is a severe exposure and never least privilege. Emailing a credential into environment variables abandons managed storage, rotation, and auditing altogether. Cross-account is a resource policy plus a shareable customer managed key.

SAA-C03 Question 6 of 7

A team stores a third-party API token that is issued once, never expires, and is set only at deployment. They want it encrypted at rest but do not want to pay a per-secret charge for a value that will never rotate. What should they use?

Answer: A — A Parameter Store SecureString, which encrypts the value with KMS at no per-secret charge in the standard tier.

When a value must be encrypted but has no rotation requirement, a Parameter Store SecureString gives you KMS encryption at rest with no per-secret cost — the frugal fit. Reserve Secrets Manager for the case where its managed rotation earns its price. Why not the others: enabling Secrets Manager rotation on a token that never expires pays for a capability the value cannot use. A standard plaintext parameter leaves the token unencrypted, failing the at-rest requirement. Hard-coding a token into source and committing it is a credential-leak waiting to happen. Encrypted-but-static is a SecureString; encrypted-and-rotating is where Secrets Manager becomes worth the cost.

SAA-C03 Question 7 of 7

A high-traffic service calls GetSecretValue on every incoming request and now sees added latency, throttling, and rising API cost, even though the secret changes only when it rotates. Which change best fixes this with the least operational overhead?

Answer: A — Cache the secret in memory (using the Secrets Manager client-side caching library) and refresh it on rotation rather than fetching on every request.

The fix is to stop calling the API per request: cache the secret value in memory and only re-fetch when it rotates, which the Secrets Manager caching library handles for you. That removes the latency, the throttling, and most of the cost in one change. Why not the others: copying the secret into a plaintext environment variable trades a performance problem for a security one and loses rotation. Raising the quota treats the symptom while leaving every request making a needless network call. Disabling rotation weakens the security posture to work around an application design issue. Cache and refresh on rotation is the recommended, low-overhead pattern.

That is exactly how every question in the course works — answer, explanation, why-not. The real set continues in the practice player: 10 free questions, no sign-up.

Continue with the 10 free questions →

Those 7 questions were the start.

The exam does not test whether you recognise a term — it tests whether you can rule out three plausible answers under time pressure. That is what the explanations above are for, and there are 780 more questions built exactly like them.

Collecting questions yourself

  • Scattered across forums, of unknown age
  • Answer keys without reasoning
  • No idea which domain you are weak in

Practising with a system

  • 780 questions in 12 full tests, SAA-C03 (2026)
  • Every option explained — including the wrong ones
  • Readiness per exam domain, and drills for your weakest
Start free — 10 questions

Straight into the player. No account, no email.

Frequently asked questions

Secrets Manager or Parameter Store — which does the exam want?
Match the requirement. Secrets Manager provides built-in scheduled rotation, including managed rotation for RDS, and charges per secret. Parameter Store SecureString encrypts values with KMS at no per-secret charge but has no built-in rotation. If the scenario says 'rotate automatically', it is Secrets Manager; if it says 'encrypted config, lowest cost, no rotation', it is a SecureString.
Does Secrets Manager really rotate RDS credentials automatically?
Yes. For supported databases including Amazon RDS, Secrets Manager offers managed rotation: it provisions the rotation function, generates the new password, updates it on the database, and updates the secret on a schedule you set — with no application downtime when your code retrieves the current value at runtime.
Are these real exam questions?
No. They are original scenarios written for this page in the exam's style and difficulty. Reproducing real exam items violates the AWS certification agreement and can cost a candidate their certification — ours come with the reasoning attached instead.

Updated for SAA-C03 (July 2026). The sample questions above are our own work in the style of the exam — not real exam items. The exam itself is set and marked by the certification body.