- A
Set 'allowPrivilegeEscalation: true'
Why wrong: Incorrect. allowPrivilegeEscalation controls whether a process can gain more privileges than its parent, but does not directly allow binding to privileged ports.
- B
Add 'capabilities.drop: [ALL]' to the container's securityContext
Why wrong: Incorrect. Dropping all capabilities would further restrict the process, making it unable to bind to any port.
- C
Add 'capabilities.add: [NET_BIND_SERVICE]' to the container's securityContext
Correct. The NET_BIND_SERVICE capability allows a non-root process to bind to ports below 1024.
- D
Set runAsUser: 0 to run as root
Why wrong: Incorrect. Running as root violates security best practices and may not be allowed by Pod Security Admission. The question implies seeking a more secure solution.
Quick Answer
The answer is to add `capabilities.add: [NET_BIND_SERVICE]` to the container’s `securityContext`. This is correct because, by default, binding to a privileged port (below 1024) requires root privileges, and a non-root user specified via `runAsUser: 1000` lacks that authority. The `NET_BIND_SERVICE` capability explicitly grants a process the ability to bind to privileged ports without running as root, making it the precise fix for this failure. On the CKAD exam, this tests your understanding of Linux capabilities in Kubernetes security contexts—a common trap is assuming you must run the container as root or change the port, but the exam expects you to know that capabilities can be added granularly. Remember the mnemonic: “Non-root needs NET_BIND_SERVICE to serve on port 80.”
CKAD Practice Question: Application Environment, Configuration and Security
This CKAD practice question tests your understanding of application environment, configuration and security. The scenario asks you to isolate a root cause — eliminate options that address a different problem before choosing. 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 Pod is configured with securityContext: { runAsUser: 1000, runAsGroup: 2000, fsGroup: 3000 }. The container's image runs a process that must listen on a TCP port below 1024 (e.g., port 80). The process is currently failing to start. What should you modify to allow the process to bind to a privileged port?
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
Add 'capabilities.add: [NET_BIND_SERVICE]' to the container's securityContext
Option C is correct. When a container runs as a non-root user (runAsUser: 1000), it cannot bind to ports below 1024. Adding the NET_BIND_SERVICE capability to the container's capabilities allows it to bind to privileged ports without being root. Dropping all capabilities is not necessary.
Key principle: Authentication proves identity; authorization controls what that identity can do after login. Both must work for full privileged access.
Answer analysis
Option-by-option breakdown
For each option: why learners choose it and why it is or isn't the right answer here.
- ✗
Set 'allowPrivilegeEscalation: true'
Why it's wrong here
Incorrect. allowPrivilegeEscalation controls whether a process can gain more privileges than its parent, but does not directly allow binding to privileged ports.
- ✗
Add 'capabilities.drop: [ALL]' to the container's securityContext
Why it's wrong here
Incorrect. Dropping all capabilities would further restrict the process, making it unable to bind to any port.
- ✓
Add 'capabilities.add: [NET_BIND_SERVICE]' to the container's securityContext
Why this is correct
Correct. The NET_BIND_SERVICE capability allows a non-root process to bind to ports below 1024.
Related concept
Authentication checks who the user is.
- ✗
Set runAsUser: 0 to run as root
Why it's wrong here
Incorrect. Running as root violates security best practices and may not be allowed by Pod Security Admission. The question implies seeking a more secure solution.
Common exam traps
Common exam trap: authentication is not authorization
Logging in proves the user can authenticate. It does not automatically mean the user is allowed to enter privileged or configuration mode. Watch for AAA authorization, privilege level and command authorization details.
Detailed technical explanation
How to think about this question
This kind of question is testing the difference between identity and permission. A user may successfully log in to a router because authentication is working, but still fail to enter configuration mode because authorization is missing, misconfigured or mapped to a lower privilege level.
KKey Concepts to Remember
- Authentication checks who the user is.
- Authorization controls what the user is allowed to do after login.
- Privilege levels affect access to EXEC and configuration commands.
- AAA, TACACS+ and RADIUS can separate login success from command access.
TExam Day Tips
- Do not assume successful login means full administrative access.
- Look for words such as cannot enter configuration mode, privilege level, authorization or command access.
- Separate login problems from permission problems before choosing the answer.
Key takeaway
Authentication proves identity; authorization controls what that identity can do after login. Both must work for full privileged access.
Real-world example
How this comes up in practice
A junior network technician can log in to a core router but cannot reach the enable prompt or configuration mode. The AAA server is authenticating the login — but the authorisation policy only grants privilege level 1, not 15. Authentication (who you are) is working; authorisation (what you can do) is not.
What to study next
Got this wrong? Here's your next step.
Review Cisco AAA concepts — authentication, authorization, and accounting. Study privilege levels (0–15), command authorization under TACACS+, and how RADIUS differs. Then practise related CKAD questions on access control and AAA configuration.
- →
Application Environment, Configuration and Security — study guide chapter
Learn the concepts, then practise the questions
- →
Application Environment, Configuration and Security practice questions
Targeted practice on this topic area only
- →
All CKAD questions
991 questions across all exam domains
- →
Certified Kubernetes Application Developer CKAD study guide
Full concept coverage aligned to exam objectives
- →
CKAD practice test guide
How to use practice tests most effectively before exam day
Related practice questions
Related CKAD practice-question pages
Use these pages to review the topic behind this question. This is how one missed question becomes focused revision.
Application Design and Build practice questions
Practise CKAD questions linked to Application Design and Build.
Application Deployment practice questions
Practise CKAD questions linked to Application Deployment.
Application Environment, Configuration and Security practice questions
Practise CKAD questions linked to Application Environment, Configuration and Security.
Application Observability and Maintenance practice questions
Practise CKAD questions linked to Application Observability and Maintenance.
Services and Networking practice questions
Practise CKAD questions linked to Services and Networking.
CKAD fundamentals practice questions
Practise CKAD questions linked to CKAD fundamentals.
CKAD scenario practice questions
Practise CKAD questions linked to CKAD scenario.
CKAD troubleshooting practice questions
Practise CKAD questions linked to CKAD troubleshooting.
Practice this exam
Start a free CKAD 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 CKAD question test?
Application Environment, Configuration and Security — This question tests Application Environment, Configuration and Security — Authentication checks who the user is..
What is the correct answer to this question?
The correct answer is: Add 'capabilities.add: [NET_BIND_SERVICE]' to the container's securityContext — Option C is correct. When a container runs as a non-root user (runAsUser: 1000), it cannot bind to ports below 1024. Adding the NET_BIND_SERVICE capability to the container's capabilities allows it to bind to privileged ports without being root. Dropping all capabilities is not necessary.
What should I do if I get this CKAD question wrong?
Review Cisco AAA concepts — authentication, authorization, and accounting. Study privilege levels (0–15), command authorization under TACACS+, and how RADIUS differs. Then practise related CKAD questions on access control and AAA configuration.
What is the key concept behind this question?
Authentication checks who the user is.
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 21, 2026
This CKAD practice question is part of Courseiva's free CNCF 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 CKAD 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.