CCSP Cloud Application Security Practice Question
A company is migrating a legacy application to the cloud. The application uses hardcoded database credentials. Which secure development practice should be implemented to address this?
⚠ Common exam trap
ISC2 often tests the distinction between 'protecting data at rest' (encryption) and 'protecting access credentials' (secrets management), leading candidates to mistakenly choose encryption at rest when the real issue is credential exposure in code.
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 a secrets management service
Hardcoded database credentials in application code create a severe security risk because they are exposed in version control, logs, and static analysis. Using a secrets management service (e.g., AWS Secrets Manager, HashiCorp Vault, Azure Key Vault) allows credentials to be stored securely, rotated automatically, and accessed at runtime via API calls, eliminating the need to embed secrets in code. This aligns with the principle of least privilege and secure credential management in cloud application security.
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 code signing for all deployments
Why it's wrong here
Code signing verifies that deployment artefacts are authentic and untampered; it leaves the hardcoded credentials inside the signed binary unchanged. It tempts because signing protects the build pipeline's integrity, and would be correct if the risk were tampered or spoofed releases rather than secrets embedded in source.
- ✗
Implement input validation on all user inputs
Why it's wrong here
Input validation filters untrusted user data entering the application; it does nothing to remove credentials embedded in source code. It tempts because validation is a core secure coding control against injection flaws, and would be correct if the finding were unsanitised input reaching a query rather than static secrets in the codebase.
- ✗
Enable encryption at rest for the database
Why it's wrong here
Encryption at rest protects stored data but leaves the hardcoded credentials readable in source code, so the exposure persists. It is tempting because it is a genuine cloud security control, and it would be the right answer if the requirement were protecting data on disk rather than removing embedded secrets.
- ✓
Use a secrets management service
Why this is correct
A secrets management service stores database credentials outside the codebase and injects them at runtime, removing hardcoded values from the application. This satisfies the secure development requirement by centralising rotation, access control and auditing of those credentials.
Go deeper
Related to this question
About these practice questions
One of 934 original CCSP 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 →
JA
Written by Johnson Ajibi, MSc IT Security
Senior Network & Security Engineer · founder of Courseiva
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.