Skip to content

Component Details

Short Summary: A technical breakdown of the internal modules that make up the SSL-CLM platform.

The Backend is a monolithic Spring Boot application designed for horizontal scalability.

Service ModuleResponsibility
apiExposes REST endpoints; handles Authentication (JWT).
serviceBusiness logic (CertificateService, DiscoveryService).
schedulerAsynchronous job processing (ScanJob, RenewalJob).
cagatewayAbstraction layer for upstream CAs (DigiCert, ACME).
certstoreAbstraction layer for target stores (JKS, IIS, PEM).

The Agent acts as a remote execution arm.

  • Polling: Agent polls POST /api/agents/jobs/pull every 30 seconds.
  • Heartbeat: Agent sends POST /api/agents/heartbeat with health status.
  • Job Result: Agent posts findings to POST /api/agents/jobs/result.

Agents are mostly stateless. They receive a “Job Specification” (JSON), execute it (e.g., “Run Scan on 192.168.1.0/24”), and return the result. They do not store long-term state.

Certificate operations are asynchronous by nature.

  1. User Request: “Renew this certificate.”
  2. State Change: Certificate status -> RENEWAL_IN_PROGRESS.
  3. Job Queued: A RENEW_CERT job is created.
  4. Execution: Agent picks up job, generates Key/CSR, sends to CA.
  5. Completion: CA returns Cert; Agent installs it; Job marked COMPLETED.