Sistema di Archiviazione Documenti - Gestione Documentale a Prova di Revisione

Archivio WORM con PDF commerciali, soft delete e legal hold

2025-2026 Customer Project

Descrizione del Progetto

Questo progetto implementa un sistema di archiviazione documenti sicuro e a prova di revisione simile a DocuWare o Kendox. Il sistema garantisce l'integrità dei documenti attraverso hashing SHA-256, versioning immutabile e logging di audit completo. Le funzionalità chiave includono archiviazione WORM, crittografia AES-256-CBC a riposo, legal hold, soft-delete con ripristino ghost, politiche di conservazione configurabili, controllo accessi basato su ruoli e archiviazione in stile WORM dei PDF commerciali (offerte, contratti, fatture) in stampa e blocco.

Funzionalità Principali

Archiviazione WORM

Il principio Write Once Read Many previene la modifica dei documenti dopo l'archiviazione

Crittografia AES-256

Crittografia a riposo per tutti i file di archivio archiviati usando la crittografia Laravel

Versioning Immutabile

Ogni modifica crea una nuova versione, le versioni originali non vengono mai sovrascritte

Logging di Audit Completo

Tutte le azioni incluse visualizzazioni, download e modifiche di accesso sono loggate con IP e user agent

Politiche di Conservazione

Periodi di conservazione configurabili con blocco WORM automatico e regole di eliminazione

Controllo Accessi a Livello Documento

Accesso basato su ruoli con permessi di visualizzazione, download e completi per documento

Archivio PDF commerciali

Blocca e archivia PDF di offerte, contratti, fatture e solleciti con semantica WORM

Soft delete e legal hold

Ripristino ghost per record soft-deleted e legal hold per bloccare la cancellazione

Stack Tecnologico

Framework Backend

Laravel 11
PHP 8.2+
MySQL

Sicurezza

Hashing SHA-256
AES-256-CBC
Conformità WORM

Frontend

Livewire
Alpine.js
Bootstrap

Archiviazione

Filesystem Locale
S3/MinIO
Nomi File UUID

Workflow

  1. Upload Documento: L'utente carica un documento con metadati e campi indice
  2. Calcolo Hash: L'hash SHA-256 viene calcolato per la verifica dell'integrità
  3. Crittografia: Il documento viene crittografato con AES-256-CBC prima dell'archiviazione
  4. Archiviazione UUID: Il file viene archiviato con nome file UUID nella struttura di directory anno/mese
  5. Creazione Versione: Il record della versione iniziale viene creato con hash e metadati
  6. Numero di Archivio: Viene generato un numero di archivio univoco (es: ARC-2026-000001)
  7. Logging di Audit: Tutte le azioni vengono loggate incluso indirizzo IP e user agent
  8. Controllo Accessi: I permessi basati su ruoli controllano chi può visualizzare, scaricare o gestire
  9. Verifica Integrità: La verifica hash garantisce l'integrità del documento nel tempo
  10. Blocco Legale: I documenti possono essere posti in blocco legale per prevenire qualsiasi eliminazione
  11. Archivio commerciale: Offerte, contratti e fatture vengono archiviati in WORM alla stampa o al blocco
  12. Soft delete: I record soft-deleted possono essere ripristinati dallo stato ghost se non in legal hold