🔒 Politique de Sécurité des Systèmes d'Information
Réactis — Logiciel SaaS de gestion de crise — IFclubs SAS
Version : 1.9 — 4 octobre 2026 (mise en cohérence avec le dossier RSSI : authentification réelle par niveau, fournisseurs d'IA effectivement utilisés, sous-traitants complétés, alerte du client en cas de violation, détection d'intrusions) — version précédente 1.8 — 3 octobre 2026 (audit de sécurité complet du 03/10/2026 : données de chaque client illisibles par les autres comptes du serveur, mots de passe des comptes de dépôt isolés, en-têtes de sécurité web sur tous les sites, composants mis à jour ; test d'intrusion proposé à l'équipe sécurité du groupe) — version précédente 1.7 — 26 septembre 2026 (
aucune donnée de crise gardée en cache par les téléphones et navigateurs, journal de crise protégé contre l'écrasement entre appareils, marques de lecture personnelles ; passerelle à annuaire minimal d'empreintes, déconnexion générale, application mobile du niveau régional, contrôle des saisies, revue de sécurité du 26/09/2026) — version précédente 1.5 (triple surveillance : serveurs, alertes proactives, erreurs techniques ; contrôle automatique des adresses e-mail ; audit de sécurité complet des 23-24/09/2026, protection du navigateur appliquée, Node.js 24, surveillance et support proactifs) |
Révision prévue : Juin 2027 |
Contact sécurité :support@ifclubs.fr
Ce document décrit les mesures techniques et organisationnelles mises en œuvre par IFclubs SAS pour assurer la sécurité de la plateforme Réactis et des données de ses clients. Il est destiné aux responsables informatiques et RSSI des établissements utilisateurs.
1. Périmètre et objectifs
La présente PSSI s'applique à l'ensemble du système d'information de la plateforme Réactis, incluant :
Le code source et les applications (backend Node.js, interface web HTML/JavaScript, application mobile)
Les données traitées pour le compte des clients (journaux de crise, contacts, documents)
Les sous-traitants techniques (hébergeur, fournisseurs IA)
Les objectifs de sécurité poursuivis sont : confidentialité (les données d'un client ne sont pas accessibles à un autre), intégrité (les données ne peuvent être altérées de façon non tracée), disponibilité (la plateforme est accessible lors des crises).
2. Hébergement et infrastructure
Localisation des données
L'ensemble des données client de production est hébergé sur un serveur virtuel (VPS) situé en France, chez IONOS SE (anciennement 1&1 IONOS), hébergeur européen certifié ISO 27001. Aucune donnée client n'est répliquée hors de l'Union européenne.
Note : Réactis ne traitant aucune donnée de santé à caractère personnel (données médicales, dossiers patients), la certification HDS (Hébergeur de Données de Santé) n'est pas requise. Elle constitue néanmoins un engagement qualité que nous visons dans le cadre de la migration planifiée chez AZ Network (hébergeur certifié HDS — calendrier : premier semestre 2027).
Infrastructure matérielle
Composant
Spécification
Type
Machine virtuelle (VPS IONOS)
Processeur
6 vCore
Mémoire
8 Go RAM
Stockage
240 Go NVMe SSD, sans RAID applicatif côté VM
Bande passante
Non contractualisée séparément — mutualisée avec les autres services hébergés sur la même VM
Protection du serveur
Détection et blocage d'intrusions réseau CrowdSec (analyse des journaux SSH, HTTP et système, blocage automatique au pare-feu) et fail2ban — ce ne sont pas des EDR ; un EDR est prévu sur le serveur HDS · auditd (audit système bas niveau) · pare-feu ufw (deny par défaut, seuls 22/80/443 ouverts) · SSH : connexion root interdite (aucune clé autorisée pour root), comptes d'administration nominatifs (une clé personnelle par intervenant, droits sudo limités au besoin), mot de passe désactivé · mises à jour de sécurité automatiques (unattended-upgrades)
Environnement d'exécution
Node.js 24 LTS (version maintenue) pour l'ensemble des services · dépendances sans vulnérabilité connue au 03/10/2026 (npm audit : 0) · un compte système non privilégié par instance, dont les fichiers de données sont illisibles par les autres comptes
Surveillance
Contrôle automatique toutes les 5 minutes (services, sites, disque, mémoire, charge, bande passante, certificats, sauvegardes, liaisons WhatsApp de chaque établissement, utilisateurs connectés) avec alerte immédiate du support de l'éditeur, et bilan quotidien. Les alertes envoyées à l'éditeur ne contiennent aucune information permettant d'identifier un client.
Isolation des tenants
Chaque établissement client (tenant) dispose d'une instance logicielle indépendante, avec :
Un processus Node.js dédié (port unique, espace mémoire isolé)
Un répertoire de données distinct sur le système de fichiers (/opt/crise-tenants/[slug]/)
Des identifiants d'accès propres (mots de passe hashés bcrypt, jamais partagés entre tenants)
Un compte système dédié (depuis le 24/09/2026) : chaque instance s'exécute sous son propre compte Linux, sans privilège administrateur ; ses données et sa configuration ne sont lisibles que par ce compte — une faille exploitée dans une instance ne donne pas accès aux fichiers des autres
Des secrets de configuration propres à chaque tenant (aucun héritage d'un tenant à l'autre), et une clé d'échange propre à chaque établissement pour les niveaux régional et groupe
Un espace ne peut pas lire les données d'un autre : processus, compte système et fichiers sont séparés, et ce cloisonnement a été contrôlé le 03/10/2026 avec les comptes réels (pièce 2 du dossier RSSI). Le territoire ne reçoit que les établissements qui lui sont rattachés (rattachement effectué par l'éditeur) ; le national ne reçoit que des nombres agrégés par territoire, sans nom d'établissement ; aucune adresse e-mail du personnel ne quitte l'établissement.
Accès éditeur aux données client
Engagement de l'éditeur : IFclubs SAS n'accède aux données d'un tenant qu'à la demande explicite et documentée de l'établissement (support technique, diagnostic), et uniquement via un accès SSH nominatif et tracé. Aucun accès applicatif aux données client n'est possible sans authentification. La console d'administration de l'éditeur est protégée par une double authentification (mot de passe + code TOTP).
3. Chiffrement et transport
Canal / Donnée
Mécanisme
Statut
Transport HTTPS
TLS 1.2 / 1.3 + HSTS
✅ Actif
Mots de passe
Hachage bcrypt (coût 10 à 12)
✅ Actif
Protection du navigateur (CSP)
Politique de sécurité du contenu appliquée sur toutes les interfaces (établissements, régional, groupe, passerelle, console de l'éditeur) : scripts uniquement depuis le site, aucun script ni gestionnaire intégré à la page (actions exécutées par un interpréteur sans eval, limité à une liste blanche de fonctions), connexions réseau limitées au site, affichage en cadre limité aux domaines de l'éditeur
✅ Actif (24/09/2026)
Sauvegardes (archives de données tenant)
Archives chiffrées AES-256, une clé par client
✅ Actif
Emails d'alerte et d'information
Envois groupés toujours en copie cachée : aucun destinataire ne voit l'adresse des autres
✅ Actif
Données au repos (fichiers JSON)
Système de fichiers serveur (non chiffré au niveau bloc)
⚠️ Roadmap
Intégrité des fichiers (documents, journal)
Hash SHA-256 calculé à chaque écriture/sauvegarde (fichier sidecar), comparé sur demande via un contrôle d'intégrité admin — détecte toute altération non tracée
✅ Actif
Secrets applicatifs (.env)
Fichiers système non versionnés, lisibles uniquement par le compte système du tenant concerné ; aucun secret dans le code source
✅ Actif
4. Authentification et contrôle d'accès
Évolution du 19/09/2026 : le mode « mot de passe partagé » a été entièrement retiré pour les établissements (nouveaux et existants) — chaque compte est désormais individuel dans tous les cas. Le panneau Admin n'est plus protégé par un second mot de passe distinct : l'accès est déterminé par le rôle de la session déjà authentifiée.
Modèle d'accès actuel
Compte individuel par personne (Coordinateur, Membre ou Invité) : identifiant = adresse email professionnelle, mot de passe personnel hashé bcrypt (12 caractères minimum, lettre + chiffre + caractère spécial) — plus aucun mot de passe partagé entre plusieurs personnes d'un même rôle
Écran de connexion unique : le rôle et les droits associés sont déduits automatiquement du compte reconnu, sans sélection manuelle préalable par l'utilisateur (élimine tout risque de déclaration erronée du rôle)
Panneau Admin : accessible sans mot de passe supplémentaire aux utilisateurs dont la session authentifiée porte le rôle Coordinateur — aucun repli sur un secret partagé
Compte support éditeur : identifiant fixe, actif uniquement si explicitement activé par l'établissement (case à cocher, jamais par défaut), double authentification obligatoire (mot de passe + code TOTP à usage unique ; le mot de passe seul ne donne accès à rien) — utilisé exclusivement pour du dépannage à la demande du client ; chaque connexion est tracée dans le journal de l'établissement ; mot de passe renouvelable à tout moment par l'éditeur ; ne compte jamais dans les licences
Niveaux régional et groupe (depuis le 24/09/2026) : comptes individuels (email + mot de passe personnel de 10 caractères minimum, lettres et chiffres, « mot de passe oublié » par code à 8 chiffres envoyé par email ; double authentification facultative depuis le 01/10/2026, code demandé en plus du mot de passe) — plus aucun mot de passe partagé ; création des accès par le responsable du client ; écrans d'affichage TV par clé en lecture seule, révocable
Jetons de session générés aléatoirement, expiration après 8 heures ; la déconnexion ferme la session côté serveur ; changer son mot de passe ferme ses autres sessions ; un lien invité ne donne accès qu'à sa crise et expire à sa clôture
Continuité des sessions (depuis le 25/09/2026) : une maintenance ou un redémarrage ne déconnecte plus les utilisateurs. Seule l'empreinte (SHA-256) de chaque jeton est enregistrée sur le serveur, jamais le jeton lui-même : la copie de ce fichier ne permettrait pas d'ouvrir une session
Application mobile (depuis le 26/09/2026) : une session ouverte dans l'application peut être prolongée une seule fois, jusqu'à 30 jours après la connexion au plus ; la déconnexion, le changement ou la réinitialisation du mot de passe et la suppression du compte désinscrivent le téléphone des notifications ; 5 téléphones au plus par compte
Déconnexion générale : depuis la passerelle, la déconnexion ferme côté serveur toutes les sessions ouvertes dans les différents espaces de l'utilisateur ; un lien apportant une autre session que celle déjà ouverte n'est accepté qu'après confirmation affichant le compte concerné
Réponses en temps constant : la durée de réponse ne permet pas de savoir si une adresse possède un compte
Aucune réponse de l'API n'est conservée dans le cache du téléphone ou du navigateur (Cache-Control: no-store) ; l'application mobile fonctionne sans cache
Intégrité du journal de crise entre appareils : chaque entrée est horodatée par le serveur, un poste en retard ne peut ni annuler ni supprimer une modification plus récente ; la suppression passe uniquement par la corbeille
Limitation des tentatives de connexion (par adresse IP réelle, y compris via la passerelle) sur tous les écrans d'authentification
Modes de connexion et double authentification (état au 04/10/2026)
Établissements : chaque personne se connecte avec son adresse e-mail et un mot de passe personnel (12 caractères minimum, lettre + chiffre + caractère spécial, haché bcrypt). Double authentification en production depuis le 04/10/2026 (code TOTP à 6 chiffres, RFC 6238, demandé après le mot de passe ; graine chiffrée AES-256-GCM, anti-rejeu, essais limités) : facultative, chacun l'active pour son propre compte (bouton « 📱 Double authentification ») ; l'administrateur de l'espace peut la rendre obligatoire pour tous les membres. « Mot de passe oublié » ne contourne pas le code ; la désactiver exige le mot de passe et un code ; téléphone perdu : un coordinateur la retire au membre. Seule exception : le lien d'ouverture de crise envoyé aux membres (usage unique, valable 2 h, accès Membre limité) reste sans code. L'ancien mode où le code remplaçait le mot de passe (facteur unique, jamais utilisé en production) a été retiré.
Territoire et national : comptes individuels (10 caractères minimum, lettres et chiffres, haché bcrypt) ; double authentification facultative (code TOTP demandé en plus du mot de passe), activée par chacun pour son compte ; un responsable peut la retirer en cas de perte du téléphone, pas l'imposer ; la désactiver exige le mot de passe puis un code (code seul refusé), comme dans les établissements — en place depuis le 04/10/2026.
Accès de l'éditeur : compte support (désactivé par défaut, activé par l'établissement) et console d'administration : mot de passe et code TOTP obligatoires.
Récupération en cas d'oubli par code temporaire à usage unique, envoyé à la personne elle-même ; l'administrateur peut révoquer un facteur mais ne peut jamais le consulter ni le réassigner à sa place.
Les établissements sont accessibles individuellement (URL propre à chacun) ou via un point d'entrée unique, crise.ifclubs.fr, qui identifie l'établissement de l'utilisateur à partir de son email et de son mot de passe.
Annuaire minimal d'empreintes (depuis le 26/09/2026) : la passerelle ne conserve ni adresse email ni mot de passe. Chaque espace (établissement, régional, groupe) lui fournit seulement des empreintes non réversibles des adresses de ses comptes (HMAC-SHA256 avec une clé secrète de la plateforme). À la connexion, le mot de passe n'est transmis qu'aux espaces qui connaissent l'adresse saisie, qui le vérifient eux-mêmes ; une adresse inconnue est refusée sans qu'aucun espace ne soit contacté. Chaque espace garde la maîtrise de ses comptes et de leur vérification ; aucune base de comptes commune n'existe.
Un utilisateur disposant de comptes dans plusieurs espaces avec le même mot de passe se voit proposer la liste de ses espaces ; le bouton « ⇄ Changer d'espace » y ramène sans ressaisie (liste conservée 12 h au plus dans l'onglet, jamais sur le serveur).
Confidentialité des noms d'établissements sur le réseau (19/09/2026)
Jusqu'au 19/09/2026, chaque établissement disposait d'un sous-domaine portant son propre nom (ex. <nom-client>.crise.ifclubs.fr), avec un certificat HTTPS individuel. Or l'émission d'un certificat HTTPS inscrit son nom de façon publique et permanente dans les journaux de transparence des certificats (Certificate Transparency), un registre public consultable par quiconque, indépendamment de la sécurité de l'application elle-même. Deux mesures correctives ont été appliquées :
Certificat wildcard unique (*.crise.ifclubs.fr) pour l'ensemble des établissements — un seul nom apparaît désormais dans les journaux publics, quel que soit le nombre de clients
Identifiants d'établissement opaques — le sous-domaine de chaque établissement ne porte plus son nom mais un identifiant aléatoire non signifiant, supprimant également l'exposition résiduelle par indication de nom de serveur (SNI, visible en clair lors de l'établissement de toute connexion HTTPS, y compris avec un certificat wildcard)
Ces deux mesures sont appliquées à tous les établissements existants et à tout nouvel établissement dès sa création.
Roadmap authentification
SSO / SAML / OIDC : prévu pour les établissements disposant d'un annuaire Azure AD ou LDAP — disponible sur devis.
5. Sauvegardes et continuité
Solution : script de sauvegarde automatisé (cron), exécuté sur le serveur — pas de réplication hors site à ce jour (prévue avec la migration HDS : copie chiffrée quotidienne dans un autre datacenter)
Fréquence : sauvegarde quotidienne automatique des données et documents déposés de tous les établissements, régionaux et groupes
Rétention : 30 jours glissants
Chiffrement : archives chiffrées AES-256 (OpenSSL), une clé de chiffrement propre à chaque client, conservée hors des dossiers applicatifs et accessible uniquement à l'administrateur système — une clé divulguée n'ouvre que les sauvegardes d'un seul client, stockées dans un répertoire distinct du répertoire de production sur le même serveur
Restitution : restauration à froid possible à tout moment — données restituables en l'état
RPO (Recovery Point Objective) : 24 heures maximum
RTO (Recovery Time Objective) : 4 heures ouvrées maximum
6. Intelligence artificielle — Données transmises à des tiers
Principe général : l'IA est optionnelle
Toutes les fonctionnalités essentielles de Réactis (journal, alertes, contacts, documents, historique) fonctionnent sans aucun recours à l'IA. Les fonctionnalités IA (conseils contextuels, synthèse de réunion, rapport de fin, RETEX) sont activables ou désactivables indépendamment par l'éditeur pour chaque tenant. La correction orthographique (bouton ✏️ Corriger) n'est pas concernée : elle repose sur un dictionnaire français local, sans transmission de données à un tiers.
Données effectivement transmises
Lorsque les fonctionnalités IA sont activées, les données suivantes peuvent être transmises aux fournisseurs IA :
Donnée transmise
Finalité
Données exclues
Entrées du journal de crise (texte des actions, décisions, informations)
Génération de conseils, synthèse, rapport
Mobile personnel, email, numéro de sécurité sociale (NIR) — filtrage technique automatique, voir ci-dessous. Numéros de dossier patient, données médicales nominatives — exclus par engagement contractuel de l'utilisateur (CGU, bandeau de rappel à la connexion, formation), pas par filtrage automatique : un numéro de dossier patient n'a pas de format universel, contrairement au NIR, ce qui rend une détection technique fiable impossible
Type et nom de la crise
Contextualisation de la réponse IA
Données d'identification personnelle des victimes — exclues par engagement contractuel de l'utilisateur (même règle que ci-dessus)
Transcription de réunion
Classification et résumé automatique
Mobile personnel, email, NIR — filtrage technique automatique (voir ci-dessous). Noms des intervenants remplacés par un identifiant générique (INTERVENANT 1, 2…) avant tout appel IA
Message externe résumé par l'IA (WhatsApp/SMS/email collé par le coordinateur)
Résumé factuel avant ajout au journal
Mobile personnel, email, NIR — filtrage technique automatique (voir ci-dessous), identique au journal
Contenu du plan blanc et des documents validés de la base documentaire
Génération de conseils contextualisés à l'établissement
Éléments filtrés au dépôt par le scanner de risques (voir ci-dessous) : marqueur de classification restreinte/interne, mobile personnel, email nominatif
Recommandation opérationnelle : les équipes de crise sont invitées à ne pas saisir de données médicales nominatives (nom de patient, numéro de dossier) dans le journal — celui-ci doit rester un outil de coordination, non un dossier médical. Cette règle est rappelée à chaque connexion (bandeau "J'ai compris") et repose sur l'engagement de l'utilisateur, pas sur un filtre technique — aucun format universel de numéro de dossier patient ne permettrait une détection automatique fiable.
Scanner de risques documentaires à l'intégration (20/07/2026)
Tout PDF déposé dans le plan blanc ou la base documentaire passe par un contrôle entièrement local, sans aucun appel IA (analyse par expressions déterministes — envoyer le document à un service externe pour vérifier s'il contient des données sensibles recréerait le risque que ce contrôle vise à prévenir). Sont recherchés : marqueur de classification restreinte/interne, numéro de mobile personnel, adresse email nominative. Comportement paramétrable par établissement, bloquant par défaut (dépôt refusé et fichier supprimé) ou avertissement (fichier conservé mais signalé, exclu du pipeline IA tant qu'il reste signalé).
Ce scanner s'ajoute à un contrôle humain indépendant, requis avant tout usage par l'IA sur l'ensemble des documents déposés (bibliothèque, plan blanc et fiches réflexes) : un Valideur doit approuver le document (bouton ✅ Valider dans la bibliothèque documentaire) avant que son contenu ne soit exploité par une fonctionnalité IA — extraction automatique de contacts, conseils IA en cellule de crise, rapport de fin de crise, génération des fiches de mission. Un document déposé par l'administrateur (plan blanc, fiche réflexe) mais jamais approuvé par un Valideur dans la bibliothèque documentaire n'est jamais transmis à l'IA, quel que soit le mode de scan retenu.
Scanner de risques sur texte libre — transcriptions, journal de crise, messages externes (20/07/2026)
Même principe que le scanner documentaire, appliqué au texte libre saisi ou importé par un humain, entièrement local, sans aucun appel IA. Sont recherchés : mobile personnel, email nominatif, numéro de sécurité sociale (NIR). Comportement paramétrable indépendamment par établissement pour chaque flux, bloquant par défaut :
Transcription de réunion Teams : scan à l'import, avant les deux appels IA (filtrage du bruit puis classification) — import refusé si bloquant, la secrétaire de main courante corrige le passage signalé avant de relancer.
Journal de crise (main courante) : scan à la saisie de chaque nouvelle entrée, avant tout usage IA ultérieur — l'entrée n'est pas enregistrée si bloquant, son auteur la corrige et la ressaisit. Double contrôle : un blocage synchrone côté navigateur pour un retour immédiat à la frappe, et un contrôle côté serveur qui fait foi (non contournable).
Message externe résumé par l'IA (import WhatsApp/SMS/email) : même scan et même réglage que le journal, appliqué avant l'envoi du contenu collé à l'IA pour résumé.
En mode avertissement, le contenu signalé est transmis tel quel (non expurgé) accompagné d'un signalement destiné à la relecture humaine — ce mode est réservé aux établissements ayant déjà fiabilisé leurs pratiques de saisie, le mode bloquant restant la configuration par défaut recommandée.
Rédaction forcée à la remontée régional/groupe (20/07/2026)
Les comptes-rendus de réunion d'un établissement peuvent être agrégés par un tenant régional ou groupe (architecture multi-régions), qui les intègre au contexte de ses propres analyses IA. Ces deux niveaux ne disposant pas de scanner propre, le contenu des comptes-rendus transmis à la route de remontée (/api/groupe/summary) est systématiquement expurgé (mobile, email, NIR remplacés par un marqueur générique) avant transmission — indépendamment du mode local (bloquant/avertissement) retenu par l'établissement pour son propre journal. Un établissement en mode avertissement conserve les éléments signalés en clair dans son propre CR local, mais jamais dans la version qui quitte son périmètre.
Fournisseurs IA et engagements RGPD
Fournisseur
Usage
Localisation
Engagement RGPD
Anthropic PBC (Claude)
Fournisseur configuré, au 04/10/2026, par 59 espaces sur 63 (établissements, territoires, national)
États-Unis
Clauses contractuelles types (CCT) prévues par ses conditions ; données non utilisées pour l'entraînement ; textes filtrés avant envoi
Mistral AI
Fournisseur proposé par défaut à l'inscription en ligne ; au choix du client
France (UE)
Selon ses conditions : hébergement dans l'UE par défaut, CCT si transfert hors UE pour certains services ; DPA de Mistral AI
Groq Inc.
Au choix du client (2 espaces de test et 1 établissement au 04/10/2026)
États-Unis
CCT prévues par ses conditions ; données non utilisées pour l'entraînement
Azure OpenAI (Microsoft)
Possible avec la clé et le contrat Microsoft du client ; non utilisé au 04/10/2026
Selon le déploiement du client
Contrat Microsoft du client
Choix du fournisseur : chaque client choisit lui-même son fournisseur depuis son panneau d'administration ; il n'y a aucun basculement automatique d'un fournisseur à l'autre. Les textes sont filtrés localement avant tout envoi (téléphones, e-mails, NIR ; noms d'établissements et titres de crise au niveau national). Les transferts vers les États-Unis (Anthropic, Groq) sont encadrés par les clauses contractuelles types prévues par les conditions de ces fournisseurs. Un client qui souhaite éviter tout transfert hors UE peut choisir Mistral AI ou demander la désactivation de l'IA.
7. Gestion des incidents de sécurité
Détection : surveillance automatique toutes les 5 minutes, surveillance des journaux, blocage automatique des adresses malveillantes (CrowdSec, fail2ban), alertes immédiates du support de l'éditeur
Support proactif (depuis le 25/09/2026) : le support de l'éditeur est prévenu automatiquement, sans attendre un signalement du client, lorsque :
une liaison WhatsApp d'alerte est déconnectée depuis plus de 10 minutes ;
une alerte (email, WhatsApp, SMS, notification) n'a pas pu être délivrée — en urgence si une crise est en cours ;
un utilisateur rencontre une erreur technique dans l'application (message technique, fichier et page concernés — jamais les données saisies) ;
le contrôle automatique nocturne (parcours complet sur un environnement de test : connexions, boutons, ouverture d'une crise d'exercice, accès support) détecte une anomalie.
Ces alertes ne contiennent aucune information permettant d'identifier le client ; le détail n'est consultable que dans la console de l'éditeur, protégée par double authentification.
Information du client : en cas d'incident affectant un établissement, ses responsables sont informés par email (destinataires en copie cachée) avec la nature de l'incident, son impact et sa résolution
Violation de données : en cas de violation de données, IFclubs SAS alerte sans délai l'établissement concerné, responsable de traitement, et lui fournit les éléments utiles (nature, données concernées, mesures prises) ; c'est l'établissement qui notifie la CNIL dans les 72 heures (art. 33 RGPD), avec l'assistance d'IFclubs SAS
Traçabilité : les accès SSH à l'infrastructure sont journalisés
Surveillance du service
Serveur : contrôle automatique toutes les 5 minutes (services, sites, ressources, certificats, sauvegardes) et bilan de santé chaque nuit, adressés à l'éditeur.
Espaces clients : l'éditeur est alerté automatiquement lorsqu'une liaison d'alerte WhatsApp est interrompue, que les relevés automatiques ne sont plus reçus, qu'un message n'a pas pu être délivré ou qu'une adresse e-mail saisie est invalide ; il corrige, ou indique au client quoi faire.
Erreurs techniques : les erreurs rencontrées par les utilisateurs sont remontées automatiquement à l'éditeur (message technique, page), sans le contenu des crises ni l'identité des personnes.
8. Gestion des vulnérabilités et mises à jour
Mises à jour de sécurité des dépendances Node.js appliquées sous 72h après publication d'une CVE critique
Mises à jour du système d'exploitation appliquées mensuellement
Veille sécurité sur les composants tiers (Express, multer, jsonwebtoken, bcrypt)
Tests de non-régression après chaque mise à jour avant déploiement en production : chaque évolution est d'abord installée et testée sur un environnement de test distinct (explorateur automatique qui clique sur chaque bouton, contrôle de la politique de sécurité du navigateur), puis déployée avec retour arrière automatique en cas d'écart
Environnement d'exécution maintenu : passage à Node.js 24 LTS le 24/09/2026 (Node.js 20 arrivé en fin de support) ; dépendances majeures mises à jour (moteur de navigateur des alertes WhatsApp, notifications) — npm audit : 0 vulnérabilité
Revue de sécurité du 26/09/2026 : relecture de l'ensemble du code ajouté ce jour-là (sessions et passerelle, échanges entre établissements et régional, contrôle des saisies et injections dans les pages) par trois relectures indépendantes. Aucun point critique ; tous les constats ont été corrigés et testés avant mise en production.
9. Réversibilité et portabilité des données
À tout moment et en cas de résiliation, l'établissement peut :
Exporter l'intégralité de ses données via Admin → RGPD → Exporter toutes les données (ZIP) — format JSON standard, lisible par tout système
Demander à support@ifclubs.fr une copie brute de l'ensemble de ses fichiers de données (hors export ZIP applicatif ci-dessus)
Obtenir la suppression définitive de l'ensemble de ses données dans un délai de 90 jours après résiliation
Le format JSON des exports garantit la portabilité — les données peuvent être réintégrées dans tout système de gestion documentaire ou archivage.
10. Liste des sous-traitants
Sous-traitant
Rôle
Pays
Base légale transfert
IONOS SE (production — actuel)
Hébergement du serveur (VPS mutualisé)
France (UE)
ISO 27001 — pas de transfert hors UE — migration chez AZ Network (HDS) prévue au S1 2027
Anthropic PBC (Claude)
Fournisseur configuré, au 04/10/2026, par 59 espaces sur 63 (établissements, territoires, national)
États-Unis
Clauses contractuelles types (CCT) prévues par ses conditions ; données non utilisées pour l'entraînement ; textes filtrés avant envoi
Mistral AI
Fournisseur proposé par défaut à l'inscription en ligne ; au choix du client
France (UE)
Selon ses conditions : hébergement dans l'UE par défaut, CCT si transfert hors UE pour certains services ; DPA de Mistral AI
Groq Inc.
Au choix du client (2 espaces de test et 1 établissement au 04/10/2026)
États-Unis
CCT prévues par ses conditions ; données non utilisées pour l'entraînement
Azure OpenAI (Microsoft)
Possible avec la clé et le contrat Microsoft du client ; non utilisé au 04/10/2026
Selon le déploiement du client
Contrat Microsoft du client
OVHcloud
Relais d'envoi des e-mails de la plateforme (smtp.mail.ovh.net) ; DNS et messagerie d'ifclubs.fr
France (UE)
Intra-UE
Google (Firebase Cloud Messaging)
Acheminement des notifications sur les téléphones (titre et une phrase)
États-Unis
CCT de Google
Meta (WhatsApp)
Alertes WhatsApp — option que le client connecte lui-même ; bibliothèque non officielle (whatsapp-web.js), « best-effort » ; 1 espace au 04/10/2026
États-Unis
Conditions de WhatsApp ; migration vers l'API officielle prévue si un client l'exige
Telegram, Microsoft Teams
Canaux d'alerte que le client connecte lui-même s'il le souhaite (bot Telegram, webhook ou Graph Teams) ; aucun au 04/10/2026
Selon le service
Contrat et paramétrage du client
Scaleway SAS
SMS d'alerte, avec le compte et la clé SMS du client (option)
France (UE)
Intra-UE
Serveur SMTP du client
Envoi des e-mails par le serveur de l'établissement, s'il le configure
Selon le client
Sous la responsabilité de l'établissement
11. Tests de sécurité
IFclubs SAS s'engage à réaliser les évaluations de sécurité suivantes :
Audit de sécurité complet (23-24/09/2026) : relecture manuelle du code (authentification, sessions, isolation entre clients, API, dépôts de fichiers, secrets), analyse statique (Semgrep), recherche de secrets (gitleaks), analyse des dépendances et du système (npm audit, Trivy) — toutes les vulnérabilités élevées et moyennes identifiées ont été corrigées ; les risques résiduels sont documentés et communicables aux RSSI sous NDA
Audit de sécurité complet (03/10/2026) : revue des quelque 300 routes d'API, de la configuration du serveur, des droits sur les fichiers, des composants et de l'exposition web ; tests de cloisonnement avec les comptes de service réels — les deux constats élevés ont été corrigés et contrôlés le jour même ; les points restants sont liés à l'hébergement et traités par la migration HDS
Analyse de code statique : renouvelée à chaque évolution majeure
Contrôle automatique quotidien (depuis le 25/09/2026) : chaque nuit, un robot rejoue le parcours complet de l'application sur l'environnement de test (connexions des différents rôles, clic sur chaque bouton, crise d'exercice, accès support) et alerte l'éditeur en cas d'anomalie
Test d'intrusion : proposé à l'équipe sécurité du groupe, sur un environnement dédié à données fictives (trois niveaux), selon des règles d'engagement écrites ; délais de correction : 72 h (critique), 15 jours (élevé), 30 jours (moyen) ; contre-audit des corrections
Les rapports de test d'intrusion sont communicables aux RSSI des établissements sous NDA
Test de charge : un rapport de capacité interne (CPU, RAM, bande passante, système de fichiers) a été réalisé pour estimer le nombre d'établissements pouvant se connecter simultanément sans dégradation — disponible sur demande auprès de l'éditeur
12. Partage des responsabilités
Responsabilité
IFclubs SAS (éditeur)
Établissement (client)
Sécurité de l'infrastructure et du code
✅ Éditeur
—
Gestion des mots de passe (distribution, renouvellement)
—
✅ Établissement
Contenu saisi dans le journal de crise
—
✅ Établissement
Configuration SMTP (sécurité du serveur email)
—
✅ Établissement
Politique d'accès Teams / Azure AD
—
✅ Établissement
Conformité de l'usage avec les politiques internes SI
—
✅ Établissement
Alerte sans délai du client en cas de violation de données côté éditeur