Confiance · sécurité
Ce qui est en place, et ce qui ne l’est pas. Les deux moitiés.
Cette page est écrite pour la personne qui doit valider un fournisseur. Tout ce qui figure dans la première moitié est implémenté et peut être montré dans le produit ; tout ce qui figure dans la seconde est une lacune, nommée, parce qu’une page de sécurité qui ne liste que des forces n’apprend rien d’utilisable à celui qui la relit.
Dernière mise à jour · 2026-09-18 Pilote · 0.3.0 Aucune certification par un tiers
01
Identité
Qui est connecté, et comment cela se prouve.
- Les mots de passe sont hachés avec Argon2id et stockés en chaînes PHC. Ils ne sont jamais stockés, journalisés ni transmis sous une forme lisible, et aucun chemin ne permet d’en récupérer un.
- Les sessions sont des jetons signés à durée de vie limitée. Le plan de contrôle émet un jeton distinct et de courte durée pour chaque appel qu’il relaie vers le moteur d’un modèle, si bien qu’un moteur ne voit jamais une session de navigateur.
- Des échecs de connexion répétés verrouillent l’adresse pendant un temps d’attente. Le compteur vit dans la base de l’annuaire : il survit donc à un redémarrage.
- Les invitations sont à usage unique, et une adresse n’est signalée comme adresse du personnel qu’une fois prouvée par une connexion ou par l’acceptation d’une invitation.
- Un agent est un utilisateur avec un rôle. Les agents IA s’authentifient comme des utilisateurs et portent des rôles ; le jeton maître de secours est refusé sur les chemins d’agent.
L’authentification unique (SAML ou OIDC) et l’authentification multifacteur imposée ne sont pas disponibles aujourd’hui. Voir les lacunes plus bas.
02
Autorisation
Quatre barrières, et c’est la plus restrictive qui l’emporte.
Le contrôle d’accès dans un modèle de planification n’est pas une permission sur une page ; c’est une permission sur une cellule. L’ordre est rôle → verrou de période → accès sélectif → accès dynamique aux cellules, et la 0.3.0 a audité chaque chemin d’écriture au regard de cet ordre.
- Les rôles. Reader, Contributor et au-dessus, vérifiés contre le moteur plutôt que supposés par l’interface.
- Les verrous de période. Un mois clos refuse toute écriture en son sein — saisie, collée, importée ou planifiée — y compris celles de la plateforme elle-même. Un refus nomme la cellule et la raison.
- L’accès dimensionnel (sélectif). Un utilisateur peut se voir accorder ou refuser des tranches précises d’un modèle — une région, une entité, un centre de coûts. Les droits sont explicites ; rien ne s’hérite par accident.
- Appliqué côté lecture. Une cellule que vous n’avez pas le droit de voir ne vous est pas proposée à l’écriture, si bien qu’un collage dans une tranche interdite est refusé avant d’être envoyé plutôt qu’appliqué à moitié.
- Isolation des locataires. Chaque modèle d’une organisation est son propre processus, avec son propre répertoire de données, joignable uniquement à travers le plan de contrôle authentifié ; le moteur d’un modèle n’est pas exposé au réseau.
03
Audit et intégrité
En ajout seul, parce qu’un historique que l’on peut modifier n’est pas un historique.
- Chaque changement apporté à un modèle est un événement ajouté à un journal, avec son auteur et son heure. L’état se reconstruit en rejouant le journal ; rien n’est modifié sur place.
- Un redémarrage rejoue jusqu’à un état identique au bit près. Les cellules calculées sont toujours recalculées, jamais persistées, si bien qu’une valeur stockée ne peut jamais dériver de sa formule.
- Les écritures sont regroupées en changesets qui peuvent porter la révision sur laquelle ils ont été bâtis ; un changeset périmé entre en conflit d’un bloc plutôt que d’atterrir à moitié.
- Une clôture, une réouverture et un retour en arrière sont enregistrés comme des actes, avec qui l’a fait et quand.
- Nos propres équipes atteignent les données client par les mêmes chemins authentifiés que les clients, et cela s’y enregistre aussi.
04
Infrastructure
Un fournisseur, une région, une petite surface.
- Amazon Web Services,
us-east-1— calcul, stockage et courrier sortant. AWS est responsable de la sécurité physique et environnementale en dessous. La liste est sur sous-traitants. - TLS sur chaque connexion, avec des certificats Let’s Encrypt renouvelés automatiquement. HTTP est redirigé ; HSTS est posé.
- Le conteneur applicatif tourne sous un utilisateur non root, et l’image est construite en CI plutôt que sur l’hôte, si bien que ce qui tourne se rattache à un commit.
- Sauvegarde nocturne du volume de données vers un stockage objet dans la même région.
- Le déploiement est un pipeline, pas une personne sur une machine. Un changement atteint la production par une construction qui passe d’abord les suites de tests, les vérifications de types et les linters.
- Les données en transit sont chiffrées par TLS. Les données au repos reposent sur du stockage géré par AWS.
05
Ce qui n’est pas en place
La moitié honnête.
Aucun de ces points n’est un secret et aucun ne devrait se découvrir au cours d’une revue achats. Si l’un d’eux est bloquant pour vous, dites-le tôt — plusieurs relèvent d’une décision de déploiement plutôt que d’une reconstruction.
- Pas de rapport SOC 2, pas de certificat ISO 27001, pas de test d’intrusion indépendant. Nous ne détenons aucune certification de sécurité délivrée par un tiers, d’aucune sorte.
- Pas d’authentification unique (SAML ou OIDC) et pas d’authentification multifacteur imposée.
- Pas de clés de chiffrement gérées par le client, et pas de chiffrement au niveau du champ à l’intérieur d’un modèle.
- Pas d’options de résidence des données. Une seule région,
us-east-1, pour tout le monde. - Pas de haute disponibilité. Un seul hôte, restauré depuis une sauvegarde. Voir engagements de service.
- Des fenêtres d’arrêt programmées. L’hôte du pilote tourne 07:00–19:00, du lundi au samedi, America/Winnipeg, et il est arrêté en dehors de ces heures.
- Pas de programme de bug bounty, et pas de document formel de politique de divulgation des vulnérabilités — même si les signalements sont bienvenus et traités, voir plus bas.
- Pas d’astreinte de sécurité 24/7.
06
Nous le dire
Signaler une vulnérabilité, et demander une revue.
Une vulnérabilité : hello@superiora.ai, avec « security » en objet et assez de détail pour la reproduire. Merci de ne pas tester contre les données d’un autre client, et de n’en prendre que ce que la preuve exige. Nous accusons réception, nous vous tenons au courant, et nous vous créditons si vous le souhaitez. Il n’y a pas de prime.
Un questionnaire ou une revue de sécurité : même adresse. La plupart des questionnaires fournisseurs trouvent leur réponse dans cette page, plus le DPA et la liste des sous-traitants ; là où ce n’est pas le cas, l’équipe fondatrice y répond directement.
Une violation touchant vos données : nous prévenons le responsable de traitement sans retard injustifié, avec ce que nous savons et ce que nous faisons. L’engagement et son délai sont dans l’avenant de traitement des données.
Apportez vos décisions. Superiora fait la planification.
Nous dressons le modèle de décision sur vos propres objectifs, données et KPI, puis nous construisons les plans et éprouvons les scénarios qui les portent. Une heure pour le voir à l'œuvre sur vos propres chiffres.
Un formulaire, ou votre messagerie — les deux arrivent à l'équipe fondatrice