| Previous | Next |
| CERTSRV_E_NO_CERT_TYPE | CERTSRV_E_SUBJECT_ALT_NAME_REQUIRED |
CERTSRV_E_TEMPLATE_CONFLICT
CERTSRV_E_TEMPLATE_CONFLICT The request contains conflicting certificate-template information, so the CA cannot decide which template should govern issuance.
What to check for CERTSRV_E_TEMPLATE_CONFLICT
- Inspect the request attributes and remove conflicting template names or OIDs.
- Regenerate the request from one known template instead of combining settings copied from several enrollment methods.
- For custom clients, ensure that template identity is submitted once and that policy modules do not inject a second conflicting template reference.
Microsoft: Certificate template concepts
Microsoft: Manage certificate templates
Diagnostic interpretation of CERTSRV_E_TEMPLATE_CONFLICT
CERTSRV_E_TEMPLATE_CONFLICT has the HRESULT value 0x80094802. AllStat records the condition as “The request contains conflicting template information.”. For CERTSRV_E_TEMPLATE_CONFLICT, in practice, interpret that wording at the boundary owned by Active Directory Certificate Services enrollment and CA policy, rather than treating the value as a generic Windows message.
Evidence to capture for CERTSRV_E_TEMPLATE_CONFLICT
- Record the exact COM method or Windows API, its input object, the calling thread, and the full 0x80094802 value before a wrapper converts it to an exception or Boolean result.
- Capture any IErrorInfo text, activity identifier, event-log entry, and subsystem trace that mentions CERTSRV_E_TEMPLATE_CONFLICT or the certsrv / template / conflict operation.
- Reproduce CERTSRV_E_TEMPLATE_CONFLICT with the smallest valid input and note whether the result changes with identity, architecture, service state, or target object.
Retry and recovery for CERTSRV_E_TEMPLATE_CONFLICT
Retry CERTSRV_E_TEMPLATE_CONFLICT only when the owning API documents a transient state or after the condition described as “The request contains conflicting template information.” has changed. For CERTSRV_E_TEMPLATE_CONFLICT, configuration, policy, format, and authorization failures normally require correction first; an immediate loop can hide the original call site and add secondary errors.
Looking for a different code? Search another status or error code.
