Mentions légales
Sécurité
Mis à jour le 4 septembre 2026
La sécurité chez LightSpot est pensée dès la conception, pas ajoutée après coup. Cette page décrit comment nous gérons l'authentification, les secrets, les données en transit et au repos, ainsi que les frontières avec nos sous-traitants. Vous avez trouvé une vulnérabilité ? Écrivez à security@lightspot.ai— nous accusons réception sous 24 heures.
1.Authentification
Les comptes utilisateurs sont authentifiés par lien magique envoyé par email (sans mot de passe) ou par Google OAuth, tous deux gérés par BetterAuth. Nous ne stockons jamais de mots de passe. Les sessions sont des cookies signés httponly, glissants sur 7 jours, invalidés côté serveur à la déconnexion. Les tokens de lien magique expirent au bout de 24 heures et sont à usage unique.
2.Gestion des clés API
Les clés API publiques (lspai_live_…) sont composées de 32 octets aléatoires encodés en base64url, générés côté serveur avec le CSPRNG crypto.randomBytes de Node. Nous ne stockons que le hachage SHA-256 et un préfixe d'affichage de 15 caractères ; la clé brute n'est montrée à l'utilisateur qu'une seule fois, à la création, et jamais ensuite. Les clés révoquées voient leur horodatage revokedAt basculer ; le hachage est conservé à des fins d'audit mais ne peut plus authentifier aucune requête ultérieure.
Les tentatives de force brute sont limitées à 10 authentifications échouées par minute et par IP, avec un délai artificiel de 100 ms sur chaque réponse 401 pour freiner l'énumération.
3.Chiffrement
Toutes les connexions au Service utilisent TLS 1.3 avec HSTS activé. La base de données Postgres managée qui stocke les données utilisateur, d'audit, d'abonnement et de clé API est chiffrée au repos avec AES-256. Les sauvegardes sont chiffrées avec des clés propres à chaque sauvegarde. Redis (file d'attente + état de rate limiting) fonctionne via une connexion TLS authentifiée ; aucun contenu d'audit n'est persisté dans Redis, seulement des métadonnées de job et des compteurs de courte durée.
4.Ce qui est envoyé aux fournisseurs de LLM
Le pipeline d'audit envoie des tranches de données spécifiques à des fournisseurs spécifiques, uniquement à la demande :
- Anthropic (Claude) : le contenu texte de la page (tronqué à environ 8 000 caractères par page) plus des enveloppes de prompt ciblées pour les 12 critères GEO sémantiques. Un seul appel API groupé par page. Nous utilisons Claude Haiku par défaut pour maîtriser le coût.
- OpenAI / Perplexity (détection de concurrents uniquement) : des prompts courts, formulés en questions, dérivés des mots-clés et thèmes déjà extraits lors de l'étape Claude précédente. Nous n'envoyons jamais le contenu brut des pages à OpenAI ou Perplexity.
- Google PageSpeed Insights : l'URL de la page auditée. Rien d'autre.
Aucun de ces fournisseurs ne reçoit vos identifiants de compte ou vos informations de facturation. Nous n'activons pas l'entraînement des modèles sur nos requêtes lorsque le fournisseur propose ce réglage ; sur les API commerciales Anthropic et OpenAI, l'entraînement sur requête est désactivé par défaut (opt-out).
5.Gestion des secrets
Les clés API des fournisseurs (Anthropic, OpenAI, Perplexity, Stripe, Resend) sont stockées comme variables d'environnement dans le coffre-fort à secrets de notre hébergeur, jamais dans le code source. L'accès aux secrets de production est limité à l'équipe fondatrice. Les builds CI utilisent des secrets limités par environnement.
6.Journalisation et supervision
Les logs applicatifs capturent la méthode de requête, le chemin, le code de statut, l'IP source et un identifiant de requête interne. Nous ne journalisons jamais les en-têtes Authorization, les cookies, les clés API brutes ou le contenu des audits. Les logs sont conservés jusqu'à 30 jours à des fins de sécurité et de débogage.
7.Isolation des locataires
La plateforme est multi-tenant au niveau applicatif. Chaque lecture et écriture en base de données est délimitée par userId ou par une vérification de propriété dans le handler. Les liens de rapport publics utilisent des tokens de partage impossibles à deviner.
8.Réponse aux incidents
Nous visons à accuser réception des signalements de sécurité sous 24 heures et à fournir une évaluation complète sous 5 jours ouvrés. Nous informerons les clients concernés sans délai excessif si une violation confirmée de données personnelles est susceptible d'entraîner un risque pour leurs droits et libertés (délais des articles 33 / 34 du RGPD).
Pour signaler une vulnérabilité : security@lightspot.ai. Nous n'avons pas actuellement de programme de bug bounty rémunéré, mais nous créditons publiquement les divulgations responsables, avec permission.
9.Posture de conformité
LightSpot n'est actuellement certifié ni SOC 2 ni ISO 27001. Nous suivons le OWASP Application Security Verification Standard au niveau 2 comme référentiel interne et exécutons une analyse statique à chaque commit. Les clients Enterprise peuvent demander notre questionnaire de sécurité et notre accord de traitement des données (DPA) à security@lightspot.ai.