The approval workflow is CertForge’s governance layer. When enabled on a Domain Trust Profile, every certificate request is queued for human review before any certificate is issued.Documentation Index
Fetch the complete documentation index at: https://docs.certforge.xyz/llms.txt
Use this file to discover all available pages before exploring further.
Enable approval on a DTP
- Go to Admin → Domain Trust Profiles
- Edit the profile
- Toggle Require approval on
- Save
The approval queue
Approvals in the navigation shows all pending, approved, and rejected requests. Each request shows:| Field | Description |
|---|---|
| Requested by | Username / email of the requester |
| Domains | The certificate’s SANs |
| Trust Profile | Which DTP matched |
| Environment | Production, staging, dev |
| Justification | Text the requester provided |
| Requested at | Timestamp |
Taking action
Click Approve to issue the certificate, or Reject to decline. When rejecting, provide a reason — it is shown to the requester and recorded permanently in the audit trail. The requester is notified by email if SMTP is configured.Who can approve
| Role | Can approve |
|---|---|
| Org admin | All requests in the org |
| Org operator | Requests for DTPs where they have admin-level DTP permission |
| Platform admin | Requests in any org (when active org context is set) |
Justification requirement
When submitting a request that requires approval, the requester must enter a justification — a plain-text explanation of why the certificate is needed. This is mandatory, stored permanently in the audit trail, and visible to approvers.Audit chain
Every approval action (submit, approve, reject, void) is written to an append-only hash-chained ledger. The chain is verified on every startup. Tampering with any past record breaks the chain and prevents CertForge from starting — making the approval history tamper-evident.Email notifications
If SMTP is configured:- On submission: Approvers receive an email with the request details and a direct link to approve or reject
- On approve / reject: The requester receives the outcome and reason
- Escalation: If a request stays pending past the escalation threshold, approvers are reminded