- A
Embed the credentials in the Lambda function code.
Why wrong: Embedding credentials in code is insecure and not recommended.
- B
Store the credentials in the buildspec.yml file in the CodeCommit repository.
Why wrong: This would expose credentials in the repository.
- C
Pass the credentials as CloudFormation parameters during deployment.
Why wrong: Parameters are visible in the CloudFormation console and are not secure.
- D
Use AWS Lambda environment variables with encryption using a KMS key.
Lambda can encrypt environment variables with KMS and decrypt at runtime.
- E
Use AWS Secrets Manager to store the credentials and retrieve them in CodeBuild using an IAM role.
Secrets Manager securely stores secrets and CodeBuild can access them via IAM.
Quick Answer
The correct answer is to use AWS Secrets Manager to store the credentials and retrieve them in CodeBuild using an IAM role, combined with encrypting Lambda environment variables with a KMS key. This approach works because Secrets Manager handles the full lifecycle of secrets, rotating them automatically, while CodeBuild can assume an IAM role with a policy granting access to retrieve those secrets at build time, eliminating hardcoded values. For the Lambda function itself, encrypting environment variables with a customer-managed KMS key ensures that sensitive data like database credentials are only decrypted in memory during execution, with access tightly controlled via IAM policies on the key. On the AWS Certified Developer Associate DVA-C02 exam, this scenario tests your understanding of the principle of least privilege and the separation of secret storage from application code. A common trap is choosing to store credentials in encrypted CodeBuild environment variables, which lacks rotation and audit capabilities. Remember the mnemonic: "Secrets for storage, KMS for encryption, IAM for access."
DVA-C02 Security Practice Question
This DVA-C02 practice question tests your understanding of security. This is a configuration task: choose the command set that satisfies every stated requirement. Small differences — like 'secret' vs 'password' or 'transport input ssh' vs 'all' — change whether the answer is correct. After answering, compare your reasoning against the explanation and wrong-answer breakdown below. 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 implementing a CI/CD pipeline using AWS CodePipeline and CodeBuild. The pipeline deploys a serverless application. Which TWO actions should be taken to securely manage the database credentials used by the application?
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
Use AWS Lambda environment variables with encryption using a KMS key.
Option D is correct because AWS Lambda environment variables can be encrypted at rest using a KMS key, providing a secure way to store sensitive data like database credentials without hardcoding them in the function code. This approach ensures that the credentials are decrypted only when the Lambda function executes, and access to the KMS key can be controlled via IAM policies. Option E is also correct because AWS Secrets Manager is a dedicated service for managing secrets throughout their lifecycle, and CodeBuild can retrieve them securely using an IAM role with appropriate permissions, eliminating the need to store secrets in code or configuration files.
Key principle: Answer the scenario, not the keyword: identify the specific constraint before choosing the most familiar-sounding option.
Answer analysis
Option-by-option breakdown
For each option: why learners choose it and why it is or isn't the right answer here.
- ✗
Embed the credentials in the Lambda function code.
Why it's wrong here
Embedding credentials in code is insecure and not recommended.
- ✗
Store the credentials in the buildspec.yml file in the CodeCommit repository.
Why it's wrong here
This would expose credentials in the repository.
- ✗
Pass the credentials as CloudFormation parameters during deployment.
Why it's wrong here
Parameters are visible in the CloudFormation console and are not secure.
- ✓
Use AWS Lambda environment variables with encryption using a KMS key.
Why this is correct
Lambda can encrypt environment variables with KMS and decrypt at runtime.
Related concept
Read the scenario before looking for a memorised answer.
- ✓
Use AWS Secrets Manager to store the credentials and retrieve them in CodeBuild using an IAM role.
Why this is correct
Secrets Manager securely stores secrets and CodeBuild can access them via IAM.
Related concept
Read the scenario before looking for a memorised answer.
Common exam traps
Common exam trap: answer the scenario, not the keyword
The trap here is that candidates may think CloudFormation parameters (Option C) are secure because they are not hardcoded, but they overlook that parameters can be exposed in plaintext in stack outputs, events, and parameter store, and they lack built-in encryption and rotation capabilities compared to Secrets Manager.
Detailed technical explanation
How to think about this question
AWS Secrets Manager uses envelope encryption with a KMS key to encrypt secret values, and it integrates with AWS services like Lambda and CodeBuild via IAM roles for automatic secret rotation and retrieval. Lambda environment variables encrypted with a KMS key are decrypted transparently when the function is invoked, but the encrypted value is stored in the function's configuration and can be accessed only by principals with kms:Decrypt permission. In a CI/CD pipeline, using Secrets Manager ensures that secrets are never stored in the pipeline artifacts or logs, and they can be rotated without redeploying the application.
KKey Concepts to Remember
- Read the scenario before looking for a memorised answer.
- Find the constraint that changes the correct option.
- Eliminate answers that are true in general but not in this case.
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
Answer the scenario, not the keyword: identify the specific constraint before choosing the most familiar-sounding option.
Real-world example
How this comes up in practice
A company's IT admin needs to give a contractor read-only access to production logs without sharing account credentials. Using role-based access control (RBAC) and temporary scoped permissions — not a permanent shared password — is the correct pattern. Questions like this test whether you can apply least-privilege access across cloud identity services.
What to study next
Got this wrong? Here's your next step.
Identify which exam domain this question belongs to, review the core concept, then practise similar questions from the same domain.
- →
Security — study guide chapter
Learn the concepts, then practise the questions
- →
Security practice questions
Targeted practice on this topic area only
- →
All DVA-C02 questions
1,616 questions across all exam domains
- →
AWS Certified Developer Associate DVA-C02 study guide
Full concept coverage aligned to exam objectives
- →
DVA-C02 practice test guide
How to use practice tests most effectively before exam day
Related practice questions
Related DVA-C02 practice-question pages
Use these pages to review the topic behind this question. This is how one missed question becomes focused revision.
Development with AWS Services practice questions
Practise DVA-C02 questions linked to Development with AWS Services.
Security practice questions
Practise DVA-C02 questions linked to Security.
Deployment practice questions
Practise DVA-C02 questions linked to Deployment.
Troubleshooting and Optimization practice questions
Practise DVA-C02 questions linked to Troubleshooting and Optimization.
DVA-C02 fundamentals practice questions
Practise DVA-C02 questions linked to DVA-C02 fundamentals.
DVA-C02 scenario practice questions
Practise DVA-C02 questions linked to DVA-C02 scenario.
DVA-C02 troubleshooting practice questions
Practise DVA-C02 questions linked to DVA-C02 troubleshooting.
Practice this exam
Start a free DVA-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 DVA-C02 question test?
Security — This question tests Security — Read the scenario before looking for a memorised answer..
What is the correct answer to this question?
The correct answer is: Use AWS Lambda environment variables with encryption using a KMS key. — Option D is correct because AWS Lambda environment variables can be encrypted at rest using a KMS key, providing a secure way to store sensitive data like database credentials without hardcoding them in the function code. This approach ensures that the credentials are decrypted only when the Lambda function executes, and access to the KMS key can be controlled via IAM policies. Option E is also correct because AWS Secrets Manager is a dedicated service for managing secrets throughout their lifecycle, and CodeBuild can retrieve them securely using an IAM role with appropriate permissions, eliminating the need to store secrets in code or configuration files.
What should I do if I get this DVA-C02 question wrong?
Identify which exam domain this question belongs to, review the core concept, then practise similar questions from the same domain.
What is the key concept behind this question?
Read the scenario before looking for a memorised answer.
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 →
Same concept, more angles
1 more ways this is tested on DVA-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 is designing a secure CI/CD pipeline using AWS CodePipeline and AWS CodeBuild. The pipeline must securely store and access sensitive parameters (e.g., API keys) used during the build. Which TWO services can be used to securely store and retrieve these parameters?
hard- ✓ A.AWS Systems Manager Parameter Store (SecureString)
- ✓ B.AWS Secrets Manager
- C.Amazon S3 with server-side encryption
- D.AWS Key Management Service (KMS) alone
- E.AWS CloudFormation parameter store
Why A: AWS Systems Manager Parameter Store (SecureString) and AWS Secrets Manager are both designed to securely store secrets and can be accessed by CodeBuild via IAM roles.
Last reviewed: Jun 24, 2026
This DVA-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 DVA-C02 exam.
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.
Sign in to join the discussion.