Hébergement 100 % France
Conformitiel est hébergée exclusivement sur des infrastructures françaises certifiées, sans aucune donnée ni traitement hors de l'Union européenne.
Serveur applicatif
OVH Forge Cloud (Gravelines)
Base de données
PostgreSQL 17 managed OVH Cloud Databases (SBG / Strasbourg)
Stockage objet immuable
OVH Object Storage S3 (Gravelines) — Object Lock COMPLIANCE
Emails transactionnels
Resend (US → IE relay), pas de PII envoyée hors sujet + email
Monitoring erreurs
Sentry SaaS EU (Frankfurt) — PII scrubber côté serveur
Certifications OVH
HDS (Hébergeur de Données de Santé), ISO 27001, ISO 27017, ISO 27018, SecNumCloud partiel
Chiffrement bout-en-bout
Toutes les données sensibles sont chiffrées au repos et en transit. Aucun accès en clair par l'équipe Conformitiel n'est possible sur les données métier des cabinets.
Transport
TLS 1.3 obligatoire (HSTS 1 an + preload)
Base de données au repos
AES-256 (transparent OVH-managed)
Stockage objet au repos
AES-256 côté serveur S3
Secrets applicatifs
.env non versionné, variables Forge chiffrées, jamais dans les logs
Tokens API
Hash SHA-256 stocké — le token en clair n'est jamais persisté
Sessions
JWT NextAuth signé, cookies httpOnly + secure + sameSite=lax
Isolation multi-tenant stricte
Chaque cabinet est une organization logique. Toutes les requêtes SQL sont filtrées côté service par organizationId — impossible d'accéder aux données d'un autre cabinet, même en cas de bug de contrôleur.
- 31 tables sur 42 portent la colonne
organization_idavec FKON DELETE CASCADE. - Les services async Drizzle valident systématiquement le filtre dans le
WHERE— audit codé. - Routes API : appel obligatoire à
getRequiredAuth()puisrequirePermission(role, module, action, organizationId). - Les tokens Bearer API sont scopés à une organization unique.
Permissions RBAC granulaires
4 rôles couvrent 22 modules fonctionnels, chacun avec des actions précises (read, write, delete, export, validate_hierarchique).
Admin
Tous droits + gestion des rôles, invitation des membres, configuration cabinet
Dirigeant
Signature, décision, validation 4 yeux, tous les modules opérationnels
Consultant
Lecture/écriture des dossiers, criblage, KYC, mais pas de validation 4 yeux
Collaborateur
Lecture, criblage simple, formation. Pas d'accès config ni gel des avoirs
Les 22 modules sont paramétrables par override par organization via l'écran /admin/permissions. Résolution en 3 niveaux : override org → override global → matrice statique.
Audit trail signé par chaîne de hash
Chaque action opposable (criblage, fiche vigilance créée, validation, gel, DS Tracfin, signature électronique...) est loggée dans la table control_logs avec :
- Horodatage UTC (précision millseconde)
- Utilisateur ayant déclenché l'action (ou
nullpour les actions externes tracées comme le portail collecte) - Type d'action + catégorie fonctionnelle
- Metadata JSON (contexte : ids, hashes, résultats)
- Hash SHA-256 chaîné avec le log précédent — la modification d'un log casse la chaîne, détectable par le job cron
/api/admin/verify-chain
Base juridique : Art. L.561-12 CMF (conservation 5 ans opposable en cas de contrôle ACPR / autorité de tutelle).
Archivage immuable S3 Object Lock
Les documents opposables (dossiers LCB-FT PDF, rapports criblage, fiches vigilance PDF, PDFs signés électroniquement) sont stockés en mode WORM (Write Once Read Many) avec S3 Object Lock en mode COMPLIANCE.
- Rétention 5 ans obligatoire (Art. L.561-12 CMF) — impossible de supprimer avant expiration, même pour un admin OVH.
- Empreinte SHA-256 calculée avant upload et stockée en DB — vérifiable par recalcul après téléchargement.
- Horodatage RFC 3161 optionnel via TSA FreeTSA (pour les audits individuels).
- Dédup 24h par contenu : un même contenu re-généré ne consomme pas d'espace en double.
- Soft-delete au niveau DB uniquement — le fichier S3 reste immuable pour audit historique.
Monitoring et observabilité
Erreurs applicatives
Sentry SaaS EU (Frankfurt) — beforeSend scrubber PII
Uptime externe
UptimeRobot (free tier) — /api/health toutes les 5 min
Rate-limit interne
Rate limiter mémoire fenêtre glissante — routes publiques
Logs applicatifs
PM2 cluster stdout — rotation quotidienne, retention 7 jours
Metrics DB
OVH Cloud Databases dashboard managed
Alertes email
Sentry issues + UptimeRobot down = email immédiat
Sauvegardes et Disaster Recovery
Backups PITR
OVH Cloud Databases — PITR 14 jours inclus par défaut
Snapshot off-site quotidien
pg_dump chiffré + upload S3 différent bucket (rétention 30j)
RPO (Recovery Point Objective)
≤ 1h (PITR OVH) — ≤ 24h (snapshot off-site)
RTO (Recovery Time Objective)
≤ 4h en cas de perte totale (procédure documentée)
Test de restauration
Trimestriel — restauration dans un environnement isolé, vérification integrité
Réplication
OVH Cloud Databases : réplique lecture optionnelle activable
Incident response et vulnerability disclosure
En cas d'incident de sécurité (fuite de données, indisponibilité majeure, compromission suspectée), notre procédure interne s'engage sur les délais suivants :
- Détection → confinement : < 1h (bascule DNS, révocation de tokens, isolation d'instance).
- Communication aux clients impactés : < 24h, email direct + bandeau dans l'app.
- Notification CNIL : < 72h en cas de fuite de données personnelles (RGPD art. 33).
- Post-mortem public : < 7 jours ouvrés, sur
/status(à venir).
Signalement responsable de vulnérabilité : security@conformitiel.fr — nous nous engageons à répondre sous 48h ouvrées. Programme bug bounty non public à ce stade, hall of fame en préparation.
RGPD et DPA
Conformitiel agit en tant que sous-traitant du cabinet client (Art. 28 RGPD). Le cabinet reste responsable de traitement pour les données KYC/LCB-FT qu'il collecte auprès de ses propres clients.
- DPA modèle signable en ligne (Data Processing Agreement).
- Liste des sous-traitants ultérieurs (OVH, Resend, Sentry, Stripe pour billing).
- Politique de confidentialité détaillée.
- Droits d'accès / rectification / effacement : demande viaprivacy@conformitiel.fr — traité sous 30 jours.
- Registre des traitements disponible sur demande auprès du DPO (contact ci-dessus).
Note : les données LCB-FT (fiches vigilance, criblages, gels) relèvent d'une obligation légale de conservation 5 ans (Art. L.561-12 CMF) qui prime sur le droit à l'effacement RGPD pour la durée de conservation légale.
Une question technique précise ?
Notre équipe technique répond directement aux DSI, RSSI et partenaires intégrateurs.
security@conformitiel.fr