Modèle de Données
Structure et organisation des données
📊 Modèle de Données
Conceptuel (MCD)
Le Modèle Conceptuel de Données décrit les grandes entités du système et leurs relations métier, incluant la gestion des accès et la modération.
Logique (MLD)
Le Modèle Logique de Données précise les tables, les colonnes et les clés étrangères (FK).
Physique (MPD)
Le Modèle Physique de Données détaille l'implémentation spécifique pour PostgreSQL.
Sécurité et Chiffrement
- Chiffrement PGP (Native) : Les colonnes
emailettwo_factor_secretsont stockées au formatbyteaet chiffrées/déchiffrées via les fonctionspgp_sym_encryptetpgp_sym_decryptde PostgreSQL (via l'extensionpgcrypto). - Hachage aveugle (Blind Indexing) : La colonne
email_hashstocke un hash (SHA-256) de l'email pour permettre les recherches d'unicité et les recherches rapides sans déchiffrer la donnée.
Index et Optimisations
- Index B-Tree systématiques sur toutes les clés étrangères (
user_id,role_id, etc.). - Index sur
deleted_at: Pour optimiser les requêtes excluant les données supprimées logiciellement. - Index unique sur
email_hashetusername.
Conformité RGPD
- Soft Delete : Implémenté via
deleted_atpour permettre le "droit à l'oubli" tout en conservant l'intégrité référentielle temporaire. - Purge Automatique : La colonne
expires_atdans la tablereportspermet de programmer la suppression automatique des données de signalement après traitement.