Ga naar inhoud
getnextpdf.com

Enterprise editie

AST-audittrail

NextPDF Enterprise registreert elke AST-mutatie als een alleen-toevoegen audittrail per document, en produceert semantisch begrensde, citatieverankerde chunks van een AST voor downstream-pijplijnen. De trail ondersteunt audit- en traceerbaarheidsworkflows. Het is geen juridische attestatie en geen certificering van documentintegriteit.

Deze mogelijkheid wordt geleverd in NextPDF Enterprise (nextpdf/enterprise) en wordt geactiveerd met een licentie-envelop op Enterprise-niveau. Een implementatie zonder die rechten laadt de classes van deze mogelijkheid niet. Vergelijk edities en verkrijg een licentie.

Terminal window
composer require nextpdf/enterprise:^3

AstAuditTrailInterface is het opnamecontract. record($documentSourceHash, $log) zet elke vermelding uit een Pro-AST-MutationLog om in een AstAuditEntry en voegt deze toe; herhaalde aanroepen met dezelfde documenthash stapelen vermeldingen op. De implementatie is per contract alleen-toevoegen: eenmaal geregistreerd kan een vermelding niet worden gewijzigd of verwijderd. findByDocument($hash) retourneert de vermeldingen voor één document in invoegvolgorde; count() retourneert het totaal over alle documenten. InMemoryAstAuditTrail is de referentie-implementatie.

AstAuditEntry is een onveranderlijke registratie van één mutatie: de bronhash van het document, de canonieke node-id, het mutatietype (updated / inserted / deleted), de 0-gebaseerde pagina-index, attribuutsnapshots vóór/na en het UTC-tijdstip waarop de vermelding is geregistreerd. Het ophalen wordt per documenthash gescoped, zodat de audithistorie per document geïsoleerd blijft.

AstAwareChunker doorloopt een AST depth-first en levert AstChunk-instanties op die de documentstructuur respecteren: koppen starten een nieuwe chunk, leaf-tekst stapelt op tot een geconfigureerde grootte, en een overlapvenster behoudt de continuïteit over splitsgrenzen heen. Elke chunk draagt de node-id, pagina-index, bounding box en node-type van zijn eerste bijdragende node, zodat downstream-systemen een precieze bronlocatie kunnen citeren.

Deze module registreert mutatiehistorie en produceert gestructureerde chunks. Het certificeert geen integriteit en levert geen juridische attestatie.

  • De audittrail is alleen-toevoegen per contract binnen de geconfigureerde opslag. Manipulatieaantoonbaarheid en onweerlegbaarheid zijn eigenschappen van waar en hoe je het persisteert en van een tijdstempel voorziet (zie Evidence), niet een garantie die deze module op zichzelf geeft.
  • Het registreren van een mutatie documenteert dat deze heeft plaatsgevonden. Het valideert of autoriseert de wijziging niet.
  • Chunk-citaties verwijzen naar bronlocaties; het zijn navigatiehulpmiddelen, geen conformiteitsclaims.

Een audittrail ondersteunt auditworkflows; het is geen juridische attestatie en geen auditcertificering.

  • NextPDF Core / Pro AST leveren het AST-model en het mutatielogboek.
  • NextPDF Enterprise AST (deze pagina) voegt de alleen-toevoegen audittrail per document over die mutaties toe, plus de citatieverankerde chunker. Het verbruikt het Pro-mutatielogboek; het vervangt het AST-model niet.

De dragende beslissing is terughoudendheid in scope. Deze module registreert dat een mutatie heeft plaatsgevonden; duurzaamheid, manipulatieaantoonbaarheid en onweerlegbaarheid worden gedelegeerd aan de onderliggende opslag en de Evidence-module. Dat houdt de belofte eerlijk: een hulpmiddel voor het bijhouden van registraties voor auditors, geen certificering die de module op zichzelf niet kan onderbouwen. Het ophalen wordt met documentSourceHash als sleutel gescoped, zodat de historie van één document nooit doorsijpelt in die van een ander. De chunker verankert elke chunk aan zijn eerste node en valideert maxChunkChars en overlapChars vooraf, zodat citaties precies blijven. Persistentie en gegevenslocatie blijven in handen van de operator, zodat hetzelfde oppervlak zowel WORM-onderbouwde evidence-opslag als lichtere pijplijnen bedient.

Ontwerpachtergrond: Compliance die je aan een auditor kunt overhandigen.

Class / InterfaceVerantwoordelijkheid
AstAuditTrailInterfaceAlleen-toevoegen opname- en ophaalcontract per document.
AstAuditEntryOnveranderlijke registratie van één mutatie met snapshots vóór/na.
InMemoryAstAuditTrailReferentie-implementatie van de alleen-toevoegen trail.
AstAwareChunkerStructuurrespecterende, citatieverankerde AST-chunker.
AstChunkEén chunk met node-id, pagina-index, bbox en node-type.
$trail->record($documentSourceHash, $mutationLog);
$entries = $trail->findByDocument($documentSourceHash);
$trail->record($documentSourceHash, $mutationLog);
foreach ($trail->findByDocument($documentSourceHash) as $entry) {
$logger->info('ast.audit', [
'node' => $entry->nodeId,
'type' => $entry->mutationType,
'page' => $entry->pageIndex,
'recorded' => $entry->occurredAt->format(DATE_RFC3339),
]);
}
// Persist the trail in a WORM-backed store for tamper-evidence (see Evidence).
  • Hetzelfde MutationLog tweemaal registreren stapelt vermeldingen op; dedupliceer upstream als je idempotentie nodig hebt.
  • De in-memory trail is niet duurzaam; productie-implementaties leveren een persistente AstAuditTrailInterface.
  • Alleen-toevoegen is een contract van de opslag, geen cryptografische eigenschap; combineer met Evidence-verpakking voor manipulatieaantoonbaarheid.

Registreren is lineair in het aantal mutatievermeldingen. Chunking is één enkele depth-first AST-wandeling; de kosten schalen met het aantal nodes en de geconfigureerde chunkgrootte.

Snapshots vóór/na kunnen documenttekst bevatten. Behandel de trail als gevoelig in rust. Het alleen-toevoegen contract voorkomt in-place bewerkingen via deze API, maar duurzaamheid en manipulatieaantoonbaarheid hangen af van de onderliggende opslag.

Mutatiesnapshots kunnen persoonsgegevens dragen die uit documenten zijn gehaald. Persistentie is gedelegeerd aan jouw trail-implementatie, dus de gegevenslocatie volgt jouw opslag. Pas bewaar- en minimalisatiecontroles toe op geregistreerde snapshots.

Node-id’s, mutatietypen, pagina-indexen en tijdstempels zijn veilig om te loggen. Snapshots vóór/na kunnen documentinhoud bevatten; redigeer ze voordat je ze doorstuurt naar gedeelde sinks.

GedragReferentieStatus
Incremental-update / integriteitscontextISO 32000-2:2020 §12.8Verwezen (context voor manipulatieaantoonbaarheid)

Deze tabel legt de specificatiecontext vast waarbinnen deze module werkt. De audittrail is een hulpmiddel voor het bijhouden van registraties, geen certificering en geen juridische attestatie.

Deze module voert geen cryptografische operaties uit. Hashing, ondertekening en het voorzien van tijdstempels voor manipulatieaantoonbaarheid worden afgehandeld door de modules Evidence, Security en Signature.

De invoer is een mutatielogboek. Mitigaties: het alleen-toevoegen opnamecontract, scoping per document om histories te isoleren, en delegatie van duurzaamheid en manipulatieaantoonbaarheid aan een WORM-capabele opslag en de Evidence-module.

  • De audittrail is per contract alleen-toevoegen binnen de geconfigureerde opslag: eenmaal geregistreerd kan een vermelding niet via deze API worden gewijzigd of verwijderd.
  • Elke vermelding is een onveranderlijke registratie van één mutatie (bronhash van het document, canonieke node-id, mutatietype, pagina-index, snapshots vóór/na, geregistreerd UTC-tijdstip); het ophalen wordt per documenthash gescoped.
  • Hetzelfde mutatielogboek tweemaal registreren stapelt vermeldingen op — dedupliceer upstream als idempotentie vereist is.
  • De chunker doorloopt de AST depth-first en levert structuurrespecterende chunks op die node-id, pagina-index, bounding box en node-type dragen voor een precieze broncitatie.
  • Het registreren van een mutatie documenteert dat deze heeft plaatsgevonden; het valideert of autoriseert de wijziging niet, en chunk-citaties zijn navigatiehulpmiddelen, geen conformiteitsclaims.

Deze pagina documenteert alleen extern waarneembaar gedrag en het ondersteunde publieke API-oppervlak. Interne namespace-paden, helper-classes, mechanismetabellen, runbook-bestandsnamen en ticketprefixen vallen buiten het bereik.

NextPDF Core / Pro AST leveren het AST-model en het mutatielogboek. De alleen-toevoegen audittrail per document en de citatieverankerde chunker hebben geen equivalent op Core-niveau; het Enterprise-oppervlak verbruikt het mutatielogboek, het vervangt het AST-model niet.

NextPDF Pro AST levert het AST-model en het mutatielogboek, maar geen alleen-toevoegen audittrail per document en geen citatieverankerde chunker. Die worden uitsluitend in het pakket nextpdf/enterprise geleverd; het Enterprise-oppervlak verbruikt het Pro-mutatielogboek.

Het opnamecontract, het ophalen per document en de chunker worden op gedragsniveau beschreven. De in-memory referentietrail is gedocumenteerd; duurzame persistentie wordt door de host geleverd, en eventuele interne opslag-internals vallen buiten het bereik van het publieke oppervlak.

Alleen-toevoegen is een contract van de opslag, geen cryptografische eigenschap. De operator levert een duurzame trail-implementatie en is verantwoordelijk voor het persisteren ervan in een WORM-onderbouwde opslag voor manipulatieaantoonbaarheid; duurzaamheid en onweerlegbaarheid hangen af van die opslag en van de Evidence-module, niet van deze module alleen. Mutatiesnapshots kunnen persoonsgegevens dragen; de gegevenslocatie volgt de opslag van de operator.

Er geldt geen exportcontrolebeperking voor het AST-audittrailoppervlak. Een audittrail ondersteunt auditworkflows; het is geen juridische attestatie en geen auditcertificering. Deze documentatie is geen juridisch oordeel; raadpleeg je eigen compliance- en juridische adviseurs.