Système d'Archivage de Documents - Gestion Documentaire Inviolable
Solution d'Archivage Sécurisée avec Principe WORM et Fonctionnalités de Conformité
Description du Projet
Ce projet implémente un système d'archivage de documents sécurisé et inviolable similaire à DocuWare ou Kendox. Le système garantit l'intégrité des documents par hachage SHA-256, fournit un versionnage immuable où chaque modification crée une nouvelle version, et offre une journalisation d'audit complète de toutes les actions. Les fonctionnalités clés incluent le stockage WORM (Write Once Read Many), le chiffrement AES-256-CBC au repos, la capacité de blocage juridique, des politiques de rétention configurables et le contrôle d'accès basé sur les rôles au niveau document. Les fichiers sont stockés avec des noms basés sur UUID pour empêcher la manipulation, et le système supporte les backends de stockage local et S3/MinIO.
Fonctionnalités Principales
Stockage WORM
Le principe Write Once Read Many empêche la modification des documents après archivage
Chiffrement AES-256
Chiffrement au repos pour tous les fichiers d'archive stockés utilisant le chiffrement Laravel
Versionnage Immuable
Chaque modification crée une nouvelle version, les versions originales ne sont jamais écrasées
Journalisation d'Audit Complète
Toutes les actions incluant vues, téléchargements et changements d'accès sont journalisées avec IP et user agent
Politiques de Rétention
Périodes de rétention configurables avec verrouillage WORM automatique et règles de suppression
Contrôle d'Accès au Niveau Document
Accès basé sur les rôles avec permissions de vue, téléchargement et complètes par document
Stack Technologique
Framework Backend
Sécurité
Frontend
Stockage
Workflow
- Téléchargement de Document : L'utilisateur télécharge un document avec métadonnées et champs d'index
- Calcul de Hash : Le hash SHA-256 est calculé pour la vérification d'intégrité
- Chiffrement : Le document est chiffré avec AES-256-CBC avant stockage
- Stockage UUID : Le fichier est stocké avec nom de fichier UUID dans une structure année/mois
- Création de Version : L'enregistrement de version initial est créé avec hash et métadonnées
- Numéro d'Archive : Un numéro d'archive unique est généré (ex: ARC-2026-000001)
- Journalisation d'Audit : Toutes les actions sont journalisées incluant adresse IP et user agent
- Contrôle d'Accès : Les permissions basées sur les rôles contrôlent qui peut voir, télécharger ou gérer
- Vérification d'Intégrité : La vérification de hash garantit l'intégrité du document dans le temps
- Blocage Juridique : Les documents peuvent être placés en blocage juridique pour empêcher toute suppression