DuoKey
Resources
Article

PKI as a Service: How a Managed Private CA Works and How to Choose One (2026)

PKI as a service explained: how a managed private CA works, public vs private PKI, cloud PKI models compared, evaluation criteria and an ADCS migration plan.

DuoKey Team··17 min read

PKI as a service (PKIaaS) is a model in which a provider operates your certificate authority hierarchy for you: root and issuing CAs, certificate issuance, revocation (CRL and OCSP) and lifecycle management are consumed through a console and APIs instead of being run on your own servers. The CA signing keys sit in hardware security modules (HSMs) or a key management service, held either by the provider or in a vault you control.

Most organizations run a private PKI because something inside the network needs certificates: Wi-Fi and VPN authentication, device identity, service-to-service TLS, Kubernetes workloads, code and document signing. For many of them that private PKI is still a Windows Server role installed years ago and maintained by one or two people. The pressure on it is rising from three directions at once: shorter certificate lifetimes that make manual renewal impractical, attack research that keeps finding abuse paths in Active Directory Certificate Services (AD CS), and the need to issue post-quantum certificates.

This guide explains what a managed private CA is, how public and private PKI differ, how the main deployment models compare (self-hosted, cloud-provider private CA, independent PKI as a service), which criteria matter when you choose, and a phased plan to migrate from AD CS without breaking existing trust.


Table of Contents

  1. What Is PKI as a Service?
  2. Public PKI vs Private PKI
  3. Why Teams Move Their Private CA to a Service
  4. PKI Deployment Models Compared
  5. How to Evaluate a PKI as a Service Provider
  6. Migrating from ADCS to PKI as a Service
  7. Private PKI with DuoKey
  8. FAQ

What Is PKI as a Service?

A PKI has four moving parts, and PKI as a service turns each of them into something you consume rather than build:

PKI componentWhat you run yourself (self-hosted)What the service provides
CA hierarchyOffline root, online issuing CAs, servers, backups, OS patchingRoot, intermediate and issuing CAs created and managed through a console or API
IssuanceTemplates, enrollment endpoints, approval scriptsCertificate profiles, enrollment protocols (ACME, EST, SCEP, CMP), approval workflows
RevocationCRL publishing jobs, OCSP responders, distribution pointsHosted CRL distribution points and OCSP responders per CA
LifecycleSpreadsheets, expiry alerts, manual renewalsInventory, renewal automation, reporting and audit trail

The most important design question is who holds the CA private keys. In a fully managed offering, the provider generates and stores CA keys in its own HSMs or cloud KMS. In a customer-controlled model, the service runs the CA logic but signs through a key vault or HSM that you own, so the provider cannot use your root or issuing keys on its own. Both are valid; they carry different risk profiles, and regulated organizations often need the second.

"Cloud PKI", "managed PKI" and "hosted PKI" are used as synonyms for PKI as a service. "Private CA as a service" is the narrower term for the case covered here: a CA whose certificates are trusted only by systems you configure.


Public PKI vs Private PKI

The difference is who trusts the root.

  • Public PKI. The root CA certificate ships in browser and operating system trust stores. Any device on the internet trusts certificates chaining to it. Public CAs issuing TLS server certificates must follow the CA/Browser Forum Baseline Requirements for the Issuance and Management of Publicly-Trusted TLS Server Certificates, which define validation methods, audits and maximum validity periods.
  • Private PKI. You decide which devices trust your root, usually by distributing it through Group Policy, MDM or a container image. The CA/Browser Forum rules do not apply, so you set your own policies for key types, lifetimes and extensions. The trade-off: nothing outside your managed estate will trust these certificates.

The Baseline Requirements are shortening public TLS certificate lifetimes in steps: a maximum of 200 days from 15 March 2026, 100 days from 15 March 2027 and 47 days from 15 March 2029. The full timeline and its operational impact are covered in our 47-day TLS certificate lifetime guide.

Private certificates are not legally bound by that schedule, but the same direction applies: short-lived certificates issued automatically shrink the window in which a stolen key is useful. A private CA that cannot be automated becomes the bottleneck.

QuestionPublic PKIPrivate PKI
Who trusts the root?Browsers and operating systems by defaultOnly devices you configure
Typical usesPublic websites, public APIsInternal TLS, mTLS, VPN, Wi-Fi (802.1X), device and workload identity, internal signing
RulesCA/Browser Forum Baseline Requirements, root program policiesYour own certificate policy
Algorithm choiceLimited to what the ecosystem acceptsYour choice, including post-quantum where both ends support it
Who can issueA publicly trusted CAYou, or a provider operating a CA for you

Why Teams Move Their Private CA to a Service

The business problem is rarely "we want a new CA". It is usually one of these:

  1. Outages from expired certificates. Manual renewal does not scale when certificate counts grow and lifetimes shrink. Automation needs standard enrollment protocols such as ACME, which many legacy private CAs do not expose. See the ACME private CA automation guide for the mechanics.
  2. AD CS attack surface. Misconfigured templates, enrollment agents and web enrollment endpoints have produced a family of privilege-escalation techniques known as ESC1, ESC2 and onward. Patching individual findings does not remove the architectural coupling between the CA and Active Directory. We cover this in Securing your PKI: where ADCS breaks down.
  3. Cloud-native workloads. Kubernetes clusters, service meshes and short-lived workloads need certificates issued in seconds through an API, not through a domain-joined server.
  4. Post-quantum migration. Long-lived roots signed with RSA or ECDSA today will still be in trust stores when quantum-capable attackers may exist. A PKI that can create ML-DSA, SLH-DSA or hybrid chains gives you a place to start testing.
  5. Key custody and audit. Auditors increasingly ask where CA keys live, who can use them and how that is logged. A CA key on a Windows server's software key store is hard to defend.

PKI Deployment Models Compared

There are four common ways to run a private CA. None is right for every organization; the table shows the trade-offs.

ModelExamplesWho operates itWhere CA keys liveStrengthsWatch-outs
Self-hosted Windows CAActive Directory Certificate Services (AD CS)YouWindows key storage providers, optionally an on-premises HSMDeep Active Directory integration, auto-enrollment via Group Policy, NDES for network devicesServer operations, template misconfiguration risk, tight coupling to AD
Self-hosted open sourceEJBCA Community, step-ca, HashiCorp Vault PKI secrets engineYouYour servers or HSM, depending on configurationFull control, broad protocol support in some products, no per-certificate feesYou own availability, upgrades, HSM integration, revocation infrastructure and audit
Cloud-provider private CAAWS Private CA, Google Cloud Certificate Authority Service, Microsoft Cloud PKI for IntuneCloud providerProvider-managedNo servers to run, native integration with that provider's servicesScoped to one ecosystem; feature sets and algorithms differ per service
Independent PKI as a serviceSpecialist PKI vendorsVendor, with options for customer-held keysVendor HSM or a customer-controlled vault/HSM, depending on the offeringMulti-cloud and on-premises reach, multiple enrollment protocols, central policyCheck key custody, protocol coverage and exit options carefully

A few verified details help narrow the choice:

  • AD CS is "a Windows Server role for issuing and managing public key infrastructure (PKI) certificates." Microsoft documents ML-DSA support in AD CS on Windows Server 2025 with the 2026-05 security update; composite ML-DSA and ML-KEM are listed as planned.
  • EJBCA is maintained by Keyfactor and offered as an open-source Community edition and an Enterprise edition. step-ca from Smallstep describes itself as "an online Certificate Authority for secure, automated X.509 and SSH certificate management" and supports ACME. HashiCorp Vault's PKI secrets engine "generates dynamic X.509 certificates."
  • AWS Private CA creates private CA hierarchies, including root and subordinate CAs, and its documentation lists ML-DSA-44, ML-DSA-65 and ML-DSA-87 alongside RSA and ECDSA key algorithms. CAs are regional resources.
  • Microsoft Cloud PKI for Intune issues certificates to Intune-managed devices through SCEP, supports a two-tier hierarchy or bring-your-own CA anchored to AD CS, uses RSA keys (2048, 3072, 4096) provisioned in Azure Managed HSM for licensed CAs, and allows up to three CAs per tenant.
  • Google Cloud Certificate Authority Service is Google Cloud's managed service for private certificate authorities.

How to Evaluate a PKI as a Service Provider

Use the criteria below as a scoring sheet. Ask each provider to show, not tell: a demo of the enrollment flow and a sample audit export are worth more than a feature list.

CriterionWhat to askWhy it matters
CA key custodyWhere are root and issuing keys generated and stored? HSM, cloud KMS, MPC? Can you bring your own HSM or vault? Can the provider sign without you?Determines who can issue in your name and how you answer auditors
Hierarchy optionsRoot, intermediate and issuing CAs? Can you import an existing (external) CA? Cascade revocation?Lets you mirror your current hierarchy and migrate gradually
Enrollment protocolsACME (RFC 8555), EST (RFC 7030), SCEP (RFC 8894), CMP (RFC 4210, profiled by RFC 9483), REST APIEach protocol covers a different estate: servers and Kubernetes (ACME), IoT and network gear (EST, SCEP, CMP), MDM (SCEP)
RevocationPer-CA CRL distribution points and OCSP (RFC 6960) responder? Revocation reasons per RFC 5280? Update frequency?Relying parties must be able to check status reliably
PQC readinessML-DSA (FIPS 204) and SLH-DSA (FIPS 205) CAs? Hybrid or composite chains? Are PQC signing keys held in an HSM or vault?Lets you pilot post-quantum chains while keeping classical interoperability
IntegrationsKubernetes cert-manager, MDM, load balancers, network devices, deployment of issued certificates to endpointsIssuance is only half the job; certificates must land where they are used
Approval and policyCSR approval workflow, profiles, role-based access, tenant isolationPrevents the "anyone can request anything" pattern behind many AD CS findings
AuditIs every issuance, revocation and admin action logged? Is the log tamper-evident and exportable?Evidence for DORA, NIS2 and internal audit
Migration from AD CSCan the service run in parallel with AD CS? Can it import your existing CA or chain to your root?Avoids a risky cut-over
Exit planCan you export certificates, CA certificates and audit logs? What happens to keys at contract end?A CA is long-lived; vendor lock-in is a real risk

On post-quantum, keep expectations grounded: not every browser, server or device understands ML-DSA or SLH-DSA yet. The practical approach is to use pure PQC chains where you control both ends and hybrid chains where classical relying parties must still validate. Our ML-DSA certificates guide covers sizes, compatibility and test plans.


Migrating from ADCS to PKI as a Service

A CA migration fails when trust breaks: devices stop trusting a new chain, or a revoked certificate is still accepted. A parallel-hierarchy approach avoids both.

Phase 1: Inventory

  • Export the list of issued, unexpired certificates from each AD CS CA, grouped by template.
  • Map each template to its consumers: domain controllers, Wi-Fi/802.1X, VPN, web servers, smart cards, code signing.
  • Identify which consumers depend on AD-specific features (auto-enrollment, smart card logon) and which can use a standard protocol.

Phase 2: Build the new hierarchy in parallel

  • Create a new root and issuing CAs in the service, with keys in an HSM or vault you approve.
  • Alternatively, if the service supports it, chain a new issuing CA to your existing root so relying parties need no new trust anchor.
  • Define certificate profiles that replace your templates, without the risky options (for example, requester-supplied subject names on authentication templates).

Phase 3: Distribute trust

  • Push the new root (and intermediates) to all relying parties via Group Policy, MDM, configuration management and container base images.
  • Verify trust on a sample of every device class before issuing a single production certificate.

Phase 4: Move workloads by protocol

  • Servers and Kubernetes: switch to ACME. Point cert-manager or certbot at the new CA's directory URL.
  • Network devices and IoT: EST, SCEP or CMP.
  • Managed endpoints: MDM SCEP profiles pointing to the new CA.
  • Migrate one consumer group at a time and let old certificates expire naturally rather than revoking them in bulk.

Phase 5: Decommission

  • Stop issuance on AD CS templates once a group is migrated; keep CRL publishing running until the last AD CS certificate has expired.
  • Revoke the old issuing CA, publish a final CRL, archive the database and keys according to your retention policy.

Private PKI with DuoKey

DuoKey certificate management provides a private PKI managed from DuoKey Cockpit, the same console and API used for keys and vaults. It is designed for internal trust (servers, workloads, devices and users you control), not for publicly trusted TLS certificates. According to the DuoKey documentation:

CA hierarchy and algorithms

  • Root, intermediate/issuing and external (imported) CAs. Parent-algorithm compatibility is enforced so PQC and hybrid chains verify.
  • RSA-2048/4096, EC-P256/P384, ML-DSA-44/65/87 (FIPS 204), SLH-DSA-128F/128S (FIPS 205) and a hybrid composite of ML-DSA-65 + ECDSA-P256.
  • CA lifecycle: suspend and reactivate, simple and cascade revoke, archive.

Key custody

  • PQC and hybrid CAs are vault-signed: their signing keys live in the vault or HSM and are never generated locally. For issued PQC certificates, the leaf key is vault-resident too.
  • Vault-backed CAs can use external HSM-backed vaults, for example Securosys (FIPS 140-2 Level 3 HSM).

Issuance and revocation

  • CSR approval workflow: request, approve or reject, issue. Renew and revoke with RFC 5280 reason codes.
  • Per-CA CRL and OCSP responder.
  • Deployment connectors push issued certificates to their targets, with per-job validation and rollback.

Enrollment protocols

  • ACME (RFC 8555) with HTTP-01 and DNS-01 challenges. HTTP-01 is validated; an internal CA can opt out of that validation, and the opt-out is off by default. Typical clients include certbot, acme.sh, Caddy and Kubernetes cert-manager (verified end to end).
  • EST (RFC 7030: cacerts, simpleenroll, simplereenroll, serverkeygen, csrattrs), SCEP (RFC 8894) and CMP (RFC 4210/9483).

A cert-manager ClusterIssuer points at the CA's ACME directory:

# ClusterIssuer pointing cert-manager at a DuoKey CA over ACME
server: https://{cockpit-url}/api/pki/acme/{ca-id}/directory

cert-manager renews by default at two-thirds of the certificate lifetime; you can change this with renewBefore.

The same private CA can back document signing: DuoKey PDF Sign is a server-side PDF signing API in Cockpit where the certificate never leaves the tenant keystore. To find which certificates and algorithms you have today before migrating, start with cryptographic posture management. For hosting options, pricing or anything not listed here, contact DuoKey.


FAQ

Q: What is PKI as a service?

PKI as a service is a delivery model where a provider operates your certificate authority hierarchy, certificate issuance, revocation and lifecycle management, and you consume them through a console and APIs. CA keys are held in HSMs or a KMS, either by the provider or in a vault you control. It replaces the servers, scripts and manual processes of a self-hosted CA.

Q: What is the difference between public and private PKI?

A public PKI's root is pre-installed in browsers and operating systems, so anyone trusts its certificates; public TLS CAs must follow the CA/Browser Forum Baseline Requirements. A private PKI's root is trusted only by devices you configure, and you set your own certificate policy. Use public certificates for internet-facing services and private ones for internal systems, devices and workloads.

Q: What is private CA as a service?

It is PKI as a service limited to a private certificate authority: the provider runs root and issuing CAs that only your systems trust. Typical uses are internal TLS, mutual TLS between services, VPN and Wi-Fi authentication, Kubernetes workloads and device identity.

Q: Can I replace ADCS with PKI as a service?

Yes, for most use cases, provided you migrate in parallel rather than with a single cut-over. Build a new hierarchy (or chain a new issuing CA to your existing root), distribute trust, move consumers protocol by protocol (ACME, EST, SCEP, CMP) and keep AD CS CRLs published until its last certificate expires. Check AD-specific dependencies such as smart card logon and Group Policy auto-enrollment early.

Q: Is PKI as a service ready for post-quantum certificates?

Some services can already create ML-DSA (FIPS 204) CAs, and a few also support SLH-DSA (FIPS 205) and hybrid composite chains; support varies by provider, so ask. Not every client understands these algorithms yet, so use pure PQC chains where you control both ends and hybrid chains where classical systems must still validate.

Q: Who holds the CA private keys in a managed PKI?

It depends on the offering. Some providers generate and keep CA keys in their own HSMs or KMS. Others sign through a vault or HSM you control, which means the provider cannot issue in your name on its own. Ask for this in writing before you choose.

Q: How do certificates get renewed automatically with a private CA?

Through enrollment protocols. Servers and Kubernetes clusters use ACME clients such as certbot or cert-manager; network devices and IoT use EST, SCEP or CMP; managed endpoints use MDM SCEP profiles. The client renews before expiry without a ticket or manual step.

Q: What is the difference between cloud PKI and managed PKI?

The terms are mostly used interchangeably. "Cloud PKI" stresses that the CA runs as a cloud service; "managed PKI" stresses that someone else operates it. What matters is the specifics: key custody, protocols, revocation, PQC support and audit.


Conclusion: Choose the PKI Model by Key Custody and Automation

PKI as a service removes server operations from your CA, but the decision that matters most is who holds the CA keys and whether every consumer can enroll automatically. Before you sign:

  • Inventory existing CAs, templates and certificate consumers
  • Decide on CA key custody: provider HSM, or your own vault/HSM
  • Confirm the enrollment protocols you need: ACME, EST, SCEP, CMP
  • Check CRL and OCSP hosting and audit log exports
  • Test an ML-DSA or hybrid chain on a non-production workload
  • Plan a parallel migration from AD CS and an exit strategy

References

Share

Written by

DuoKey Team

Discuss the decisions that matter most to your security programme.

Tell us where control is difficult today. We will help you identify a practical next step.