VA-003 Compare and configure secrets engines Practice Question
A Vault administrator has enabled the PKI secrets engine and configured a root CA. They now need to issue certificates for multiple internal services, each with its own common name (CN). Which is the most efficient way to issue certificates while maintaining security?
⚠ Common exam trap
It's easy for candidates to assume a single wildcard role is more efficient, but they overlook that Vault's role-based access control (RBAC) and domain restrictions are designed for granularity, and that `allow_any_name` or missing allowed domains create security holes or request failures.
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
✓
Create a separate role for each service with specific allowed domains
Creating a separate role for each service allows you to enforce least-privilege by restricting each role to specific allowed domains (e.g., via `allowed_domains` and `allow_subdomains`). This ensures that each service can only request certificates for its own CN, preventing cross-service impersonation while maintaining efficient, role-based issuance. The PKI secrets engine uses roles to define TTL, key type, and domain constraints, making per-service roles the most secure and manageable approach.
Answer analysis
Option-by-option breakdown
For each option: why learners choose it and why it is or isn't the right answer here.
- ✓
Create a separate role for each service with specific allowed domains
Why this is correct
PKI roles bind issuance to permitted domains and key parameters, so a per-service role with its own allowed domains lets each service obtain only its own CN certificate. This satisfies the requirement for multiple CNs while enforcing least privilege at issuance.
- ✗
Create one role with the allow_any_name parameter set to true
Why it's wrong here
Setting allow_any_name to true lets any CN be signed, so a compromised token could mint certificates for arbitrary hostnames, defeating the security requirement. It is tempting because it removes per-service role configuration, and it would suit a lab or throwaway CA where issuance flexibility matters more than constraining names.
- ✗
Create one role with a wildcard allowed domain and use the common_name parameter when issuing
Why it's wrong here
A wildcard allowed domain permits any CN matching that pattern, so certificates for unintended hostnames can be issued, weakening the security requirement. It is tempting because one role then covers many services, and it would be correct when every service genuinely shares a single controlled domain suffix.
- ✗
Create one role without any allowed domains and specify the common name in the request
Why it's wrong here
With no allowed domains configured, Vault rejects every issuance request, so no certificates can be produced for the internal services. It is tempting because it appears to defer naming to the request, and it would be correct if the role instead specified allowed_domains covering the services' domains.
Go deeper
Related to this question
About these practice questions
One of 366 original VA-003 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 VA-003 practice question is part of Courseiva's free HashiCorp 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 VA-003 exam.