- A
Use the --no-root flag when starting the container.
Why wrong: There is no --no-root flag in Docker.
- B
Include a USER directive in the Dockerfile to specify a non-root user.
This is the standard way to run a container as a non-root user.
- C
Set the securityContext.runAsNonRoot parameter in the container manifest.
Why wrong: This is a Kubernetes concept, not Docker.
- D
Use the --cap-drop=ALL option when running the container.
Why wrong: This drops capabilities but does not change the user ID; the container may still run as root.
Quick Answer
The correct answer is to include a USER directive in the Dockerfile to specify a non-root user. This is the best practice because the USER instruction permanently sets the user identity for all subsequent RUN, CMD, and ENTRYPOINT commands at build time, embedding the least privilege requirement directly into the container image itself. On the Certified Cloud Security Professional CCSP exam, this concept tests your understanding of secure software development lifecycle controls and container runtime security, often appearing as a distractor against runtime-only fixes like the --user flag in docker run, which can be overridden. A common trap is assuming that dropping root privileges at runtime is sufficient, but the USER directive ensures the container runs as non-root by default, even if the orchestrator omits security flags. Memory tip: “USER first, root last” — always define the non-root user in the Dockerfile before any CMD or ENTRYPOINT to enforce least privilege from the image layer up.
CCSP Cloud Application Security Practice Question
This CCSP practice question tests your understanding of cloud application security. Read the scenario carefully and evaluate each option against the stated constraints before committing to an answer. 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 application developer is using a containerized application with Docker. The security team requires that the application runs with the least privilege possible. Which of the following is the BEST practice to ensure the container does not run as root?
Clue words in this question
Noticing these words before you look at the options changes how you read each choice.
Clue:
"best"Why it matters: Signals that multiple options may be partially correct. Choose the option that most directly solves the exact problem described, not the one that sounds most complete.
Clue:
"least"Why it matters: You want the option with minimum overhead, fewest steps, or lowest impact — not the most feature-rich or comprehensive answer.
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
Include a USER directive in the Dockerfile to specify a non-root user.
The USER directive in a Dockerfile sets the user for any subsequent RUN, CMD, or ENTRYPOINT instructions, ensuring the container process runs as a non-root user by default. This is the most direct and persistent method to enforce least privilege at build time, as it becomes part of the image itself and applies regardless of runtime flags.
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 the --no-root flag when starting the container.
Why it's wrong here
There is no --no-root flag in Docker.
- ✓
Include a USER directive in the Dockerfile to specify a non-root user.
Why this is correct
This is the standard way to run a container as a non-root user.
Clue confirmation
The clue words "best", "least" in the question point toward this answer.
Related concept
Read the scenario before looking for a memorised answer.
- ✗
Set the securityContext.runAsNonRoot parameter in the container manifest.
Why it's wrong here
This is a Kubernetes concept, not Docker.
- ✗
Use the --cap-drop=ALL option when running the container.
Why it's wrong here
This drops capabilities but does not change the user ID; the container may still run as root.
Common exam traps
Common exam trap: answer the scenario, not the keyword
ISC2 often tests the distinction between runtime flags (like --user or --cap-drop) and build-time directives (like USER), and candidates mistakenly think dropping capabilities is equivalent to running as a non-root user.
Detailed technical explanation
How to think about this question
Under the hood, the USER directive modifies the default user ID (UID) in the container's /etc/passwd and sets the process's UID for all subsequent instructions. If no USER is specified, the container defaults to UID 0 (root), even if capabilities are dropped, because root still has access to files owned by root. A real-world scenario is a web server container: using USER 1001 ensures that even if an attacker exploits the application, they gain only the privileges of that unprivileged user, not root.
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 SOC analyst notices unusual lateral movement in the network at 2 AM. The IR playbook dictates: identify and contain (isolate the affected machine), then eradicate (remove the malware), then recover (restore from backup), then document. Skipping containment before eradication risks the attacker regaining access. Questions like this test the sequence and rationale of incident response phases.
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: Include a USER directive in the Dockerfile to specify a non-root user. — The USER directive in a Dockerfile sets the user for any subsequent RUN, CMD, or ENTRYPOINT instructions, ensuring the container process runs as a non-root user by default. This is the most direct and persistent method to enforce least privilege at build time, as it becomes part of the image itself and applies regardless of runtime flags.
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.
Are there clue words in this question I should notice?
Yes — watch for: "best", "least". Signals that multiple options may be partially correct. Choose the option that most directly solves the exact problem described, not the one that sounds most complete.
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 →
Keep practising
More CCSP practice questions
- Refer to the exhibit. An administrator is reviewing an AWS S3 bucket policy. Based on the policy, which of the following…
- Which TWO of the following are required for GDPR compliance when processing personal data in the cloud?
- A cloud provider experiences a data breach affecting customer data. Which of the following laws most likely requires the…
- A company is performing a risk assessment of its cloud environment. They have identified a risk with a likelihood of 4 (…
- A company is implementing a secure software development lifecycle (SSDLC) for its cloud-native applications. Which pract…
- A company wants to ensure that its cloud provider's data deletion process is verifiable. Which of the following should t…
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.