Sécurité et confiance

Les mécanismes derrière les affirmations

Contrayo ne détient pas de certification SOC 2 à ce jour ; nous ne vous présentons donc pas de rapport ni de badge. Ce que nous pouvons vous montrer est réel : les mécanismes concrets déjà intégrés au produit, décrits avec suffisamment de clarté pour que votre propre équipe de sécurité puisse les vérifier.

Où nous en sommes aujourd'hui. Contrayo est un produit en phase précoce, pas encore disponible de manière générale. Contrayo ne détient pas de certification SOC 2 à ce jour. Un test d'intrusion indépendant a été commandé, mais pas encore terminé. Tout le reste de cette page décrit des fonctionnalités réelles et déjà déployées, qui existent aujourd'hui dans le code même du produit, et non un projet.
Sécurité du compte

Comment votre connexion est protégée

Stockage des mots de passe

Les mots de passe sont hachés avec scrypt, un algorithme délibérément gourmand en mémoire, avec un sel aléatoire unique par mot de passe et une comparaison en temps constant lors de la vérification. Votre mot de passe réel n'est jamais stocké, journalisé ni comparé en texte clair, nulle part dans le système.

Jetons de session

La connexion génère un jeton aléatoire de 256 bits. Seul son hachage cryptographique est stocké dans la base de données — le jeton brut n'existe que dans le cookie de votre navigateur, de sorte que la lecture de la base de données ne livre rien qui puisse encore servir d'identifiant.

Renforcement des cookies

Le cookie de session est marqué HttpOnly (invisible pour les scripts de la page, ce qui empêche son vol via une faille de type cross-site scripting),SameSite=Lax (une véritable défense contre la falsification de requête intersite) et Secure chaque fois qu'il est servi via HTTPS.

En-têtes de sécurité HTTP

Chaque réponse comporte une Content-Security-Policy stricte — aucun script en ligne, aucune source de script tierce — ainsi queStrict-Transport-Security, X-Frame-Options,X-Content-Type-Options et Referrer-Policy. Ce sont des défenses standard au niveau du navigateur contre le détournement de clic (clickjacking), le MIME-sniffing et l'injection de scripts, envoyées à chaque réponse, y compris les pages d'erreur.

Limitation des tentatives de connexion

Les échecs de connexion sont limités à la fois par compte et par adresse IP source, avec un blocage temporaire après des échecs répétés. Une tentative de connexion avec une adresse e-mail sans compte associé prend exactement le même temps qu'avec un compte réel et un mot de passe erroné, de sorte que le seul délai de réponse ne permet pas de découvrir quels e-mails possèdent un compte.

Cycle de vie de la session

Les sessions expirent automatiquement, et certains événements les révoquent immédiatement : la réinitialisation d'un mot de passe, ou la désactivation d'un compte par un administrateur, déconnecte aussitôt ce compte de toutes les sessions qu'il détient — pas seulement celle à l'origine de l'action.

Réinitialisation du mot de passe

Les liens de réinitialisation sont à usage unique et expirent au bout d'une heure. Ils sont stockés de la même manière que les jetons de session, sous forme de hachage et non en clair, et le lien lui-même n'est renvoyé qu'une seule fois, directement à la personne qui l'a demandé — jamais inscrit dans un journal.

Authentification multifacteur

Les codes à usage unique basés sur le temps (TOTP, compatibles avec toute application d'authentification standard), les codes à usage unique par e-mail et les codes à usage unique par SMS sont tous disponibles dès aujourd'hui. TOTP et e-mail sont disponibles sur toutes les offres ; le SMS est une fonctionnalité des offres Moyenne entreprise et Entreprise. Tout utilisateur peut en activer un pour son propre compte, et une organisation peut exiger l'authentification multifacteur pour tous — l'exiger est gratuit sur toutes les offres, pas une option payante, ce qui correspond au schéma majoritaire de cette catégorie (GitHub, Slack, GitLab, Zoom et Salesforce l'offrent également sans frais). Le secret associé à chaque inscription est chiffré au repos — jamais stocké ni journalisé en clair — et dix codes de récupération à usage unique sont délivrés lors de l'inscription en cas de perte d'un appareil.

Historique de connexion et de déconnexion

Chaque tentative de connexion, déconnexion et expiration de session est enregistrée avec son horodatage, son adresse IP et son navigateur — une tentative échouée est également enregistrée, mais jamais d'une manière révélant si l'adresse e-mail correspond ou non à un compte existant. Tout utilisateur peut consulter son propre historique ; un administrateur de l'organisation peut le consulter pour l'ensemble de l'organisation. Ce journal fonctionne au mieux, sans garantie absolue, et ne remplace pas le journal d'audit complet décrit plus bas — un échec de journalisation ne bloque jamais une connexion réelle.

Contrôle d'accès

Les données de votre organisation restent celles de votre organisation

Fermé par défaut

Chaque route de l'API exige une session authentifiée, sauf si elle figure sur une liste publique courte et explicite (connexion, déconnexion, demande ou confirmation d'une réinitialisation de mot de passe, et consultation des conditions légales actuellement publiées). Rien d'autre n'est accessible sans session.

Isolation des locataires, appliquée à chaque requête

Les données d'une organisation sont entièrement isolées de celles de toute autre organisation. Une vérification partagée et testée s'exécute à chaque requête faisant référence à un autre enregistrement, confirmant non seulement son existence, mais aussi son appartenance réelle à l'organisation de l'appelant, plutôt que de se fier au seul filtre de la requête elle-même.

Un point de contrôle d'autorisation unique

Chaque décision d'autorisation dans le produit est prise par une seule et même fonction, qui échoue de manière sécurisée : une autorisation qu'elle ne reconnaît pas, ou une session sans droit correspondant, est refusée par défaut plutôt qu'accordée.

Politique de mot de passe configurable

Votre organisation définit sa propre longueur minimale et ses propres exigences de composition pour les mots de passe. La vérification qui affiche une liste de contrôle en temps réel à la personne définissant un mot de passe est exactement la même que celle exécutée sur le serveur, de sorte que ce que l'écran affiche ne peut jamais différer de ce que le serveur accepte réellement.

Authentification unique & provisionnement SCIM

L'authentification unique OIDC et le provisionnement des utilisateurs SCIM 2.0 sont disponibles sur nos offres Moyenne entreprise et Entreprise. La connexion est vérifiée à l'aide du jeton signé de votre propre fournisseur d'identité et associée à votre organisation via son domaine de messagerie ; désactiver une personne chez votre fournisseur d'identité désactive également son compte ici.

Environnements de test

Une copie réelle et isolée de votre organisation — ses types de contrat, statuts, hiérarchies, bibliothèque de clauses et historique complet des politiques — pour tester une modification de politique ou un import en masse sans toucher à la production. Les données de contrat qu'il contient sont synthétiques, générées à partir des statistiques agrégées des données de production de votre organisation, jamais une copie de contrats, contreparties ou valeurs réels. Réservé aux offres Moyenne entreprise et Entreprise, et seul un administrateur de l'organisation peut en provisionner, réinitialiser ou synchroniser un.

Un arrêt strict du traitement externe par IA, quand votre DPA l'exige

Si l'accord de traitement des données négocié par votre organisation interdit l'envoi de votre contenu à un processeur d'IA externe, c'est nous-mêmes qui appliquons cette restriction — ce n'est pas un paramètre que vos propres administrateurs configurent. Une fois activée, elle est appliquée au point de passage unique par lequel doit transiter chaque fonctionnalité d'IA du produit, avant tout réglage propre à une fonctionnalité, et chaque fonctionnalité d'IA de votre console d'administration apparaît désactivée avec une explication claire.

Intégré au moteur d'approbation

Des contrôles qui font partie du produit lui-même, pas un ajout externe

Séparation des tâches

Lorsque votre organisation active ce paramètre, le moteur de délégation d'autorité l'applique directement : la personne qui a approuvé un contrat ne peut pas être également celle qui le signe.

Historique complet des approbations

Chaque décision d'approbation, de rejet ou de signature d'un contrat est enregistrée — qui a agi, quand, et, si la personne a agi dans le cadre d'une délégation au nom d'une autre, pour qui elle intervenait — visible dans l'historique propre à ce contrat.

Piste d'audit complète de la plateforme

Au-delà de l'historique des approbations ci-dessus, chaque action sur l'ensemble du produit — pas seulement les approbations de contrats — est enregistrée dans une piste d'audit distincte, immuable et chaînée par hachage, déployée en production dès aujourd'hui. Toute modification d'une entrée antérieure rompt la chaîne à partir de ce point, ce qui rend une falsification impossible à dissimuler.

Responsabilité administrative

La désactivation du compte d'un membre révoque immédiatement toutes les sessions qu'il détient, et une organisation ne peut jamais se retrouver sans aucun administrateur en mesure de la gérer — l'application bloque tout changement qui la laisserait sans administrateur.

Chiffrement en transit

Les requêtes vers Contrayo transitent via HTTPS/TLS, une pratique standard pour toute application web correctement déployée aujourd'hui.

Ce que nous n'avons pas encore

Nous le précisons directement plutôt que de vous laisser le découvrir lors d'un audit de sécurité :

  • Aucune certification SOC 2 n'existe à ce jour.
  • Aucun test d'intrusion indépendant n'a encore été terminé. Un test externe et authentifié a été commandé. Nous exécutons également notre propre suite interne et automatisée de tests d'attaque contre le produit — attaques de session et de connexion, isolation des données entre locataires, élévation de privilèges, injection, tentatives d'usurpation d'identité, entre autres — dans le cadre habituel de notre propre processus de développement. Il s'agit de tests réels, mais internes et menés par nous-mêmes, ce qui ne remplace pas une évaluation indépendante par un tiers.

Si l'un de ces points constitue une exigence incontournable pour votre organisation aujourd'hui, nous préférons vous le dire maintenant plutôt que vous le découvriez lors du processus d'achat.

Des questions de sécurité auxquelles un questionnaire doit répondre ?

Contactez-nous et nous vous répondrons directement — aucun appel commercial n'est nécessaire pour obtenir une réponse claire.

Nous contacter