sgcSign Server

Een self-hosted remote code-ondertekendaemon die de sgcSign-engine verpakt achter een REST-API, een Bootstrap-webadmin-console en kant-en-klare CI/CD-pipelines.

REST-API + webadmin
7 handtekeningformaten
Multi-tenant-projecten
Hash-chained audit log

Wat je krijgt

Eén host, Windows of Linux, accepteert ondertekenverzoeken van build-agents, ontwikkelaars en CI-pipelines — met volledige audit, goedkeuringen en metrics ingebouwd.

REST API

Met TLS beveiligde /api/v1-endpoints voor ondertekening, verificatie, health, metrics en goedkeuringsworkflows. Een stabiel, machinevriendelijk contract voor build-agents en SDK's.

Web Admin Console

Op Bootstrap gebaseerde /admin-UI voor gebruikers, API-sleutels, providers, projecten, audit, goedkeuringen, webhooks en metrics. Beheerders hoeven nooit JSON te bewerken.

Windows-service-installer

Inno Setup-wizard of zip-drop. De daemon registreert zichzelf als Windows-service, beëindigt TLS zelf en draait zonder toezicht op een geharde host.

Multi-tenant-projecten

Elk project isoleert een subset van providers, API-sleutels, audit-zichtbaarheid en goedkeuringswachtrijen. Meerdere teams delen één server zonder elkaars ondertekeningsmateriaal te zien.

Goedkeuringsworkflow in twee stappen

Dezelfde API-sleutel doet een verzoek, een admin of projectadmin keurt het goed of af, en pas daarna worden de bytes ondertekend. SHA-256-hash en bestandsgrootte staan vast in het verzoek.

SHA-256-audit-log

Elke actie — ondertekenen, verifiëren, inloggen, goedkeuren, webhook afvuren — wordt toegevoegd aan een hash-geketend audit-log. Manipulatie is detecteerbaar; SIEM-scraping is rechttoe rechtaan.

Prometheus-metrics

Tellers voor ondertekenen / verifiëren / goedkeuren, histogrammen voor ondertekenlatentie, gauges voor providerbeschikbaarheid. Directe Prometheus 0.0.4-tekstexpositie zonder extra database om te beheren.

HMAC-ondertekende webhooks

13 lifecycle-events afgeleverd met X-Sgcsign-Signature: sha256=…. Een retry-wachtrij met drie pogingen houdt SIEM-, chat- en ticketing-systemen synchroon.

XAdES · PAdES · CAdES

Dezelfde engine die in de bibliotheek zit, ontsloten via de REST-API. Elk landprofiel, elk handtekeningniveau.

XAdES

XML-handtekeningen voor VeriFactu, FatturaPA, Facturae, KSeF, e-Factura, Peppol, myDATA en EU-arbeidscontracten. POST /api/v1/sign/xades.

PAdES

PAdES-Basic-PDF-handtekeningen met incrementele updates die de originele inhoud behouden. Zichtbare of onzichtbare handtekeningen. POST /api/v1/sign/pades.

CAdES

CMS-/PKCS#7-detached- of attached-handtekeningen voor willekeurige binaire data. Tijdstempel + long-term validation. POST /api/v1/sign/cades.

Tsjechische EET 2.0

Bouwt en ondertekent een geregistreerde verkoop met een sleutel die op de server staat, verstuurt die optioneel naar de belastingdienst en geeft het antwoord terug. Alle kassasystemen van een keten delen één certificaat van de belastingplichtige. POST /api/v1/sign/eet.

Authenticode, ClickOnce, NuGet, VSIX

De ondertekeningsdaemon praat met de certificaatbron die jij configureert: Windows-store, PFX, PKCS#11-hardwaretoken, Azure Trusted Signing, AWS KMS, Google KMS.

Authenticode

Onderteken .exe, .dll, .msi, .cab, .cat, .ocx, .sys. In hash-only-modus wisselen runners met weinig bandbreedte een paar tientallen bytes uit voor een PKCS#7-blob van 8 KB.

ClickOnce

Onderteken ClickOnce-manifests (.application / .manifest) zodat Windows-clients installeren zonder trust-prompts. POST /api/v1/sign/clickonce.

NuGet-packages

Onderteken .nupkg-packages zodat de NuGet-client de identiteit van de uitgever valideert. Author- en repository-handtekeningen worden ondersteund. POST /api/v1/sign/nuget.

VSIX-extensies

Onderteken Visual Studio-extensiepackages zodat zowel VS Marketplace als de IDE zelf ze als vertrouwd accepteren. POST /api/v1/sign/vsix.

Drop-in voor elke belangrijke pipeline

Build-agents roepen een stabiel REST-endpoint aan in plaats van ondertekeningscertificaten op elke runner te installeren.

GitHub Actions

De composite action post het artefact naar de REST-API van de server. Het token wordt uitgegeven door de webadmin, gekoppeld aan een project en verlaat nooit de secret-store van de runner.

Azure DevOps

De pipeline-taak draait de sgcSign-CLI-client, die de binary uploadt, indien nodig pollt op goedkeuring en het ondertekende resultaat downloadt — allemaal in één stap.

Jenkins

Declarative-pipeline-snippet met curl of de meegeleverde CLI. Werkt met zowel Linux- als Windows-agents; de handtekening verschijnt als build-artefact.

Docker

Image met de daemon en een voorbeeld-providerconfig. Draai de container, mount je TLS-cert en provider-secrets en je hebt een portable ondertekeningsservice.

Helm-chart

Deploy op Kubernetes voor volledig redundante, opgeschaalde ondertekening. Combineer met een cloud-KMS (Azure Trusted Signing, AWS KMS, Google KMS) voor sleutelloze pods.

Hoe de stukken in elkaar passen

Eén Windows-service termineert TLS, biedt /api/v1 + /admin aan en raadpleegt bij elke aanroep de geconfigureerde sleutelprovider. Sleutelmateriaal staat nooit in de database.

Eén binary, drie interfaces

  • Build-agents spreken /api/v1 aan via HTTPS met een bearer API-sleutel.
  • Operators loggen in op /admin in elke browser. Bootstrap-UI, sessiecookies, op rollen gebaseerde toegang.
  • Sleutelproviders on-demand opgehaald uit PFX, Windows-store, PKCS#11, Azure TS, AWS KMS, GCloud KMS, Vault, Certum, CSC v2.
  • SQLite-database bewaart gebruikers, API-sleutels, audit-log, sessies en webhook-wachtrij. Nooit het sleutelmateriaal zelf.
  • Webhooks worden asynchroon afgevuurd naar SIEM- en chat-systemen bij elke geauditeerde gebeurtenis.
topology.txt
                +----------------------------+
                |   Build agents / CI / CLI  |
                +-------------+--------------+
                              |
                              | HTTPS (TLS 1.2/1.3)
                              v
        +-------------------------------------------+
        |   sgcSignServer.exe   (Windows service)   |
        |   /api/v1/*    (signing, verify, health)  |
        |   /admin/*     (web console, sessions)    |
        +---+-----------------+---------------------+
            |                 |                |
            v                 v                v
     +-------------+   +---------------+   +-----------+
     |  SQLite DB  |   | KeyProviders  |   |  Webhooks |
     | (audit/keys)|   | PFX/HSM/KMS   |   | (outbound)|
     +-------------+   +---------------+   +-----------+

Eén curl verwijderd

Een bearer API-sleutel, een hash- of bestandsupload en de ondertekende binary stroomt terug naar stdout. Authenticode, CAdES, PAdES, XAdES, ClickOnce, NuGet en VSIX delen dezelfde vorm.

Onderteken een .exe in één aanroep

  • X-API-Key of Authorization: Bearer — beide auth-methodes werken.
  • X-Project selecteert de tenant; de sleutel moet geautoriseerd zijn voor het project.
  • Het antwoord bevat X-Sgcsign-Signer-Subject + X-Sgcsign-Duration-Ms voor log-correlatie.
  • Hash-only-modus voor Authenticode: stuur de SHA-256, ontvang een kleine PKCS#7-blob.
sign-binary.sh
# MyApp.exe Authenticode-ondertekenen via de REST-API
curl -X POST https://sign.example.com/api/v1/sign \
  -H "Authorization: Bearer $TOKEN" \
  -H "X-Project: production" \
  -F "format=authenticode" \
  -F "file=@./MyApp.exe" \
  -o MyApp-signed.exe

# Headers die de server teruggeeft
# X-Sgcsign-Signer-Subject: CN=ACME Corp, O=ACME, C=US
# X-Sgcsign-Duration-Ms: 312

Drie stappen naar een ondertekende binary

Van een verse Windows-host naar het eerste ondertekende artefact in minder dan vijf minuten.

1

Installeren

Draai de meegeleverde Inno Setup-wizard of pak de zip uit in een map. De daemon registreert zichzelf als een Windows-service genaamd sgcSignServer. Bind aan :8443 en laad je TLS-certificaat.

2

Configureer een sleutelprovider

Voeg een provider toe aan sgcSignServer.conf.json — een PFX-bestand, een Azure Trusted Signing-account, een AWS KMS-sleutel, een Certum SimplySign-gebruiker of een van de andere tien sleutelproviders. Geen service-herstart vereist.

3

Geef een token uit en roep de API aan

Open /admin/apikeys, klik op New API key, koppel deze aan een project en kopieer het token naar je CI-runner-secret. De build-agent roept POST /api/v1/sign aan.

De beste deal: All-AccessElk eSeGeCe-product, inclusief Premium-ondersteuning, vanaf €1,059 per jaar.
Bekijk de All-Access-prijzen

Centraliseer ondertekenen voor je hele build farm

Stop met het kopiëren van ondertekencertificaten naar elke build-agent. Eén sgcSign Server, één REST-endpoint, volledige audit en goedkeuringen.