Beveiliging & audit
Beveiliging & audit
Hoe sleutels beschermd zijn, wat gelogd wordt en welke notificaties ondertekenaars krijgen.
Sleutel-opslag
| Sleutelmateriaal | Opslag |
|---|---|
| CA-privésleutel | Encrypted in database (Fernet/AES via Frappe Password-veld) |
| Keystore ondertekenaar | Encrypted in database (Fernet/AES via Frappe Password-veld) |
| Keystore-wachtwoord ondertekenaar | Encrypted in database (Fernet/AES via Frappe Password-veld) |
Geen privésleutelmateriaal op disk. Tijdens ondertekenen wordt het in een tijdelijk bestand geschreven, gebruikt en direct gewist. De Frappe encryption key (in site_config.json) is het master-geheim dat alles beschermt; behandel als root-secret van de site.
Audit-trail — Signature Log
Elke ondertekenpoging (succes of fout) wordt vastgelegd in Signature Log:
| Veld | Detail |
|---|---|
| Document reference | DocType + naam (bv. Sales Order / SO-0042) |
| Signer | User + volledige naam |
| Certificate serial | Het gebruikte X.509-serienummer |
| Timestamp | Wanneer ondertekend |
| IP address | Vanaf welk IP |
| Status | Success / Failed |
| SHA-256 hash | Van de ondertekende PDF — detecteert post-signing tampering |
| Error message | Als fout |
De Signature Log is append-only — geen edits, geen deletes via de desk-UI.
E-mailnotificaties
Na elke geslaagde ondertekening krijgt de ondertekenaar een mail met:
- Welk document is ondertekend (met link)
- Wanneer (UTC + tijdzone ondertekenaar)
- Vanaf welk IP
- Welk certificaat (serienummer)
De mail bevat een waarschuwing: neem direct contact op met de beheerder als de ondertekening niet door u is geïnitieerd. Dit is de primaire alarmbel bij 2FA-omzeiling of credential-diefstal.
2FA-afdwinging
2FA is de tweede factor die elke ondertekening afdekt. Zonder zou een gestolen wachtwoord ongelimiteerd ondertekenen toelaten.
- Per DocType in Signable DocTypes → Require 2FA (aanbevolen: altijd aan)
- Globaal afgedwongen via System Settings → Two Factor Authentication
- TOTP via authenticator-app — geen SMS (SIM-swap-risico)
CA-privésleutel — operationele richtlijnen
Uw CA-privésleutel is het vertrouwensanker. Compromittering laat een aanvaller valse certificaten uitgeven die op die van u lijken.
- Sleutel is encrypted opgeslagen (Frappe Password-veld)
- Frappe encryption key (in
site_config.json) is het echte geheim — apart back-uppen, file-permissies beperken - Roteer de CA elke 5–10 jaar; plan een overgangsperiode waarin oude en nieuwe CA beide vertrouwd zijn
- Voor hogere security: air-gapped CA — certificaten offline genereren en in de DB importeren
Audit-checklist
| Vraag | Waar te kijken |
|---|---|
| Wie heeft document X ondertekend? | Documentform → "Signed by"-veld, of Signature Log |
| Failed signings de afgelopen 24 uur? | Signature Log → filter Status = Failed, Datum = vandaag |
| Verlopen certificaten nog actief op systeem? | Signing Certificate List → filter Status = Expired |
| Is de CRL recent gepubliceerd? | Signing Settings → CRL Last Generated |
| Recente toegang tot CA-privésleutel? | Frappe Activity Log op Signing Settings-DocType |
Back-up overwegingen
- Database (encrypted at rest door hosting provider) bevat al het sleutelmateriaal
site_config.jsonbevat de Frappe encryption key — apart back-uppen, restrict to fewest people- Een back-up zonder de encryption key is nutteloos — geen decryptie van keystores
- Test uw herstelproces jaarlijks
Gerelateerd
- Een handtekening verifiëren — integriteitsgaranties in detail
- Ondertekenaars & certificaten — intrekkingsflow