- A
Use AWS Secrets Manager to store credentials and retrieve them at runtime
Why wrong: Secrets Manager is for third-party credentials; for AWS services, an IAM role is simpler and more secure.
- B
Store the database credentials as ciphertext in the Lambda environment variables
Why wrong: Even encrypted, storing credentials in environment variables is not best practice; role-based access is preferred.
- C
Attach an IAM execution role to the Lambda function with fine-grained permissions for SQS and DynamoDB
This follows least privilege and avoids any static credentials.
- D
Create an IAM user with Access Key and Secret Key and pass them to the function via encrypted environment variables
Why wrong: Long-term keys increase risk; IAM roles are recommended for Lambda.
CCSP Cloud Application Security Practice Question
This CCSP practice question tests your understanding of cloud application security. Match the stated requirement to the specific cloud service, access model, or configuration option — many options are valid in isolation but not for this scenario. 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 cloud security engineer is configuring an AWS Lambda function that processes messages from an Amazon SQS queue. The function needs to write results to a DynamoDB table. Which of the following is the SECUREST way to manage the function's credentials?
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
Attach an IAM execution role to the Lambda function with fine-grained permissions for SQS and DynamoDB
Option C is correct because AWS Lambda natively supports IAM execution roles, which provide temporary, automatically rotated credentials via the AWS Security Token Service (STS). By attaching an execution role with fine-grained permissions for SQS (e.g., sqs:ReceiveMessage) and DynamoDB (e.g., dynamodb:PutItem), the function never needs to manage long-lived secrets, eliminating the risk of credential leakage or rotation failures.
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.
- ✗
Use AWS Secrets Manager to store credentials and retrieve them at runtime
Why it's wrong here
Secrets Manager is for third-party credentials; for AWS services, an IAM role is simpler and more secure.
- ✗
Store the database credentials as ciphertext in the Lambda environment variables
Why it's wrong here
Even encrypted, storing credentials in environment variables is not best practice; role-based access is preferred.
- ✓
Attach an IAM execution role to the Lambda function with fine-grained permissions for SQS and DynamoDB
Why this is correct
This follows least privilege and avoids any static credentials.
Related concept
Read the scenario before looking for a memorised answer.
- ✗
Create an IAM user with Access Key and Secret Key and pass them to the function via encrypted environment variables
Why it's wrong here
Long-term keys increase risk; IAM roles are recommended for Lambda.
Common exam traps
Common exam trap: answer the scenario, not the keyword
ISC2 often tests the misconception that storing encrypted credentials in environment variables or using a secrets manager is always the most secure approach, but for AWS-native services, IAM execution roles are the recommended and most secure method because they eliminate the need for any static, long-lived credentials.
Detailed technical explanation
How to think about this question
Under the hood, when a Lambda function assumes an IAM execution role, the Lambda service calls STS AssumeRole to obtain temporary security credentials that are injected into the function's runtime environment as environment variables (AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY, AWS_SESSION_TOKEN). These credentials have a limited lifetime (typically 6 hours) and are automatically refreshed by the Lambda runtime. In a real-world scenario, if the function needs to access a DynamoDB table in a different AWS account, you would use a cross-account IAM role rather than storing any static keys, ensuring that credentials never leave the AWS security boundary.
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 developer is choosing between AES-256 (symmetric) and RSA-2048 (asymmetric) for encrypting a large file that will be sent to a partner. Symmetric encryption is fast but requires key exchange; asymmetric is slower but solves the key distribution problem. A hybrid approach — encrypt the file with AES, encrypt the AES key with RSA — is standard. Questions like this test whether you understand when each approach applies.
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.
- →
Cloud Application Security — study guide chapter
Learn the concepts, then practise the questions
- →
Cloud Application Security practice questions
Targeted practice on this topic area only
- →
All CCSP questions
504 questions across all exam domains
- →
Certified Cloud Security Professional CCSP study guide
Full concept coverage aligned to exam objectives
- →
CCSP practice test guide
How to use practice tests most effectively before exam day
Related practice questions
Related CCSP practice-question pages
Use these pages to review the topic behind this question. This is how one missed question becomes focused revision.
Cloud Application Security practice questions
Practise CCSP questions linked to Cloud Application Security.
Cloud Security Operations practice questions
Practise CCSP questions linked to Cloud Security Operations.
Legal, Risk and Compliance practice questions
Practise CCSP questions linked to Legal, Risk and Compliance.
Cloud Concepts, Architecture and Design practice questions
Practise CCSP questions linked to Cloud Concepts, Architecture and Design.
Cloud Platform and Infrastructure Security practice questions
Practise CCSP questions linked to Cloud Platform and Infrastructure Security.
Cloud Data Security practice questions
Practise CCSP questions linked to Cloud Data Security.
CCSP fundamentals practice questions
Practise CCSP questions linked to CCSP fundamentals.
CCSP scenario practice questions
Practise CCSP questions linked to CCSP scenario.
CCSP troubleshooting practice questions
Practise CCSP questions linked to CCSP troubleshooting.
Practice this exam
Start a free CCSP 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 CCSP question test?
Cloud Application Security — This question tests Cloud Application Security — Read the scenario before looking for a memorised answer..
What is the correct answer to this question?
The correct answer is: Attach an IAM execution role to the Lambda function with fine-grained permissions for SQS and DynamoDB — Option C is correct because AWS Lambda natively supports IAM execution roles, which provide temporary, automatically rotated credentials via the AWS Security Token Service (STS). By attaching an execution role with fine-grained permissions for SQS (e.g., sqs:ReceiveMessage) and DynamoDB (e.g., dynamodb:PutItem), the function never needs to manage long-lived secrets, eliminating the risk of credential leakage or rotation failures.
What should I do if I get this CCSP 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 →
Last reviewed: Jun 30, 2026
This CCSP practice question is part of Courseiva's free ISC2 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 CCSP 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.