easyMultiple Choice
200-901 Practice Question: A developer needs to securely store API keys for…
A developer needs to securely store API keys for use in a CI/CD pipeline. Which best practice should be followed?
⚠ Common exam trap
Cisco often tests the misconception that storing secrets in a separate configuration file (like a JSON or .env file) is acceptable as long as it is not committed, but the trap is that any file-based storage in the repository—even if ignored—risks accidental exposure, whereas pipeline secrets are designed specifically for secure injection without file persistence.
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 built-in pipeline secrets or environment variables.
CI/CD platforms (e.g., Jenkins, GitLab CI, GitHub Actions) provide built-in mechanisms to store secrets as encrypted environment variables or pipeline secrets. These values are masked in logs and never exposed in source code, ensuring API keys remain confidential throughout the pipeline execution.
Answer analysis
Option-by-option breakdown
For each option: why learners choose it and why it is or isn't the right answer here.
- ✗
Share the keys via email to the team.
Why it's wrong here
Email transmits keys in plaintext across mail servers and leaves copies in inboxes and archives outside any access control. It is tempting because email is a familiar, immediate way to distribute information among a team, which suits non-sensitive coordination messages, not credentials that must be injected only at pipeline runtime.
- ✗
Hardcode the keys in the source code.
Why it's wrong here
Hardcoding embeds the key in the image or repository, exposing it to anyone who can read the source or pull the artefact, and rotation requires a rebuild. It is tempting because it removes all runtime lookup logic, which suits throwaway local demos with dummy values, not production pipelines handling real API credentials.
- ✓
Use built-in pipeline secrets or environment variables.
Why this is correct
Built-in pipeline secrets or environment variables keep API keys outside source control and build logs, injecting them only at runtime. This satisfies the constraint of secure storage, unlike committing credentials to a repository or baking them into images, where they persist and leak.
- ✗
Store the keys in a JSON file committed to the repository.
Why it's wrong here
A committed JSON file is still version-controlled plaintext, so the key persists in every clone and in history indefinitely. It is tempting because a structured file is easy to parse and keeps configuration beside the code, which suits non-secret settings such as endpoint URLs, not credentials requiring controlled injection and rotation.
Go deeper
Related to this question
About these practice questions
One of 975 original 200-901 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 200-901 practice question is part of Courseiva's free Cisco 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 200-901 exam.