1. Aperçu
Cette page décrit les mesures de sécurité qui protègent vos données dans Brainpercent, exploité par Brainpercent, LLC (Delaware, États-Unis). Nous décrivons uniquement ce qui est réellement en place aujourd'hui. Nous ne revendiquons pas de certifications que nous ne détenons pas. Pour savoir comment nous traitons les données personnelles, consultez notre Politique de Confidentialité et notre Avenant de Traitement des Données (DPA).
2. Chiffrement
Vos données sont chiffrées à chaque étape :
- Au repos : chiffrement AES-256 pour la base de données et le stockage de fichiers (Supabase Postgres et Storage, hébergés dans l'UE, région de Francfort).
- Jetons des comptes connectés : les jetons OAuth de vos comptes sociaux connectés sont en outre chiffrés au niveau applicatif avec AES-256-GCM, avec un vecteur d'initialisation unique et un tag d'authentification par secret.
- En transit : TLS 1.2 ou supérieur pour toutes les connexions entre votre navigateur, nos serveurs et nos prestataires de services.
3. Contrôle d'Accès
L'accès à vos données est restreint à plusieurs niveaux :
- Sécurité au niveau des lignes : la sécurité au niveau des lignes (RLS) de Postgres limite chaque requête à votre propre utilisateur au niveau de la base de données, de sorte qu'un utilisateur ne peut pas lire les lignes d'un autre.
- Séparation des rôles : les clients de base de données sont séparés par rôles. Le client qui s'exécute dans votre navigateur ne détient jamais d'identifiants administratifs ; les opérations privilégiées s'exécutent uniquement côté serveur.
- Secrets chiffrés : les clés API et les secrets d'environnement sont stockés chiffrés dans Vercel et Supabase et ne sont jamais commités dans le contrôle de version.
4. Sécurité de l'Application
L'application et ses intégrations sont durcies :
- En-têtes de sécurité : HSTS et des en-têtes de sécurité supplémentaires sont définis sur les réponses pour imposer HTTPS et réduire la surface d'attaque web courante.
- Validation des signatures de webhooks : les webhooks entrants (Stripe, Inngest) sont vérifiés contre leurs signatures cryptographiques avant tout traitement.
- Limitation de débit : la limitation de débit distribuée sur les points de terminaison d'authentification ralentit le credential stuffing et les attaques par force brute.
5. Sécurité des Paiements
Les données de cartes de paiement sont entièrement gérées par Stripe, un processeur de paiement certifié PCI-DSS. Les numéros de carte ne touchent jamais nos serveurs et nous ne les stockons jamais. Nous ne conservons que les références non sensibles fournies par Stripe (comme les identifiants de client et d'abonnement).
6. Surveillance et Réponse aux Incidents
Nous surveillons les problèmes et nous nous engageons à vous notifier lorsqu'ils comptent :
- Surveillance des erreurs : les erreurs de l'application sont capturées et surveillées via Sentry.
- Notification de violation : si une violation de données affecte vos données personnelles, nous notifierons les utilisateurs concernés et les autorités compétentes dans les 72 heures lorsque la loi l'exige (comme l'article 33 du RGPD).
7. Limitations Actuelles
Nous préférons l'honnêteté au théâtre sécuritaire. Voici ce que nous n'avons pas encore :
- Entreprise à opérateur unique : Brainpercent est actuellement construit et exploité par une seule personne. Il n'y a pas d'équipe de sécurité 24/7 ni de séparation des tâches entre plusieurs personnes. L'accès à la production est limité à cette seule personne, ce qui maintient aussi une surface d'attaque interne minimale.
- SOC 2 / ISO 27001 : pas encore disponible. Nous ne revendiquons pas SOC 2, ISO 27001 ni aucune autre certification que nous ne détenons pas, et nous n'avons pas réalisé de test d'intrusion par un tiers.
8. Divulgation Responsable
Si vous pensez avoir trouvé une vulnérabilité de sécurité, écrivez à edward@brainpercent.com avec pour objet « Security ».
Incluez les étapes de reproduction. Veuillez ne pas accéder aux données d'autres utilisateurs, ne pas dégrader le Service et ne pas divulguer publiquement le problème avant que nous ayons eu une chance raisonnable de le corriger. Nous lisons chaque rapport et visons à répondre sous 72 heures.