La sécurité n'est pas un module optionnel.
Pivola manipule des données financières personnelles. La protection de ces données est conçue dès l'architecture, avec des principes simples : hébergement européen, chiffrement des éléments sensibles, isolation stricte des comptes, conformité RGPD vérifiée.
- Hébergement européen
- L'application et la base de données sont hébergées sur des infrastructures situées exclusivement dans l'Union européenne. L'application tourne sur le réseau Vercel (région Frankfurt). La base de données Postgres est gérée par Supabase, région Europe de l'Ouest. Aucun transfert de données vers les États-Unis ni vers d'autres juridictions hors UE.
- Authentification et sessions
- Le flow d'authentification utilise le protocole PKCE et des tokens JWT signés. Les sessions sont stockées dans des cookies HttpOnly, Secure et SameSite=Lax, inaccessibles depuis le code JavaScript du navigateur. Les actions sensibles (changement de mot de passe, suppression de compte) requièrent une vérification active.
- Protection anti-abus
- Un captcha invisible hCaptcha est exécuté sur les pages d'inscription, de connexion et de réinitialisation de mot de passe. Un rate limiting global limite les tentatives à cinq par minute pour la connexion et trois par heure pour l'inscription. Les comptes inactifs ne consomment pas de ressources prioritaires.
- Row Level Security
- Chaque ligne de la base de données est protégée par une politique RLS (Row Level Security) qui restreint l'accès aux seules données de l'utilisateur authentifié. Cette protection s'applique au niveau du moteur Postgres, en deçà de la couche applicative, et ne peut pas être contournée même en cas de bug applicatif.
- Chiffrement des clés API
- Les clés API tierces optionnellement renseignées par l'utilisateur (Finnhub, Twelvedata) sont chiffrées au repos via pgcrypto, en utilisant une clé maîtresse stockée dans le Vault Supabase. Le format de stockage rend les valeurs illisibles en cas d'exposition de la base de données sans la clé maîtresse correspondante.
- Données utilisateur et RGPD
- Pivola applique strictement le Règlement Général sur la Protection des Données. L'utilisateur peut à tout moment exporter l'intégralité de ses données au format CSV depuis l'espace compte. La suppression du compte entraîne la suppression complète des données associées, sans rétention différée hors des obligations légales de conservation des factures (six ans).
- Cookies et tracking
- Seuls les cookies strictement nécessaires au fonctionnement de l'application (session, préférences d'affichage) sont posés sans consentement, conformément à la doctrine CNIL. Les outils analytiques tiers (PostHog) sont configurés pour ne pas enregistrer de session video, ne pas faire d'autocapture, et respecter les paramètres de tracking du navigateur. Aucun partage des données avec des régies publicitaires.
- Monitoring et résilience
- Les erreurs applicatives sont remontées en temps réel via Sentry, hébergé en région européenne. Les sauvegardes de base de données sont prises quotidiennement par l'infrastructure Supabase. Une procédure de restauration est documentée et fait l'objet de tests réguliers.
- Signalement de vulnérabilité
- Une faille de sécurité repérée dans Pivola peut être signalée par email à founder@pivola.app. Les rapports responsables sont accueillis et traités rapidement. Un programme de bug bounty formel sera mis en place dans une étape ultérieure ; en attendant, la reconnaissance des contributeurs reste manuelle et personnelle.
Documents légaux
Documents complémentaires
Pour les engagements juridiques détaillés, se référer aux pages dédiées.