Sécurité
Écrit pour la personne qui doit approuver l'outil, pas pour celle qui l'achète. Ce qui est déjà vrai est écrit au présent. Ce qui ne l'est pas encore est écrit aussi.
Où vivent les données
Chez Google Cloud, dans Firestore. Les conversations, les visiteurs et la configuration de chaque site sont dans une base dédiée à Krealo Chat, séparée des autres produits de l'agence.
Les fichiers joints — une photo d'appareil, une facture — sont dans Cloud Storage et ne sont jamais servis par une adresse publique : chaque ouverture passe par un lien signé qui dure une heure. Le lien voyage dans la barre du navigateur et finit dans un historique ou une capture ; ce qui doit durer, c'est le fichier, pas le lien.
Qui peut y accéder
Les règles de Firestore refusent tout par défaut. Chaque collection déclare qui peut lire et écrire, et rien de ce qui n'est pas déclaré n'est accessible — y compris pour nous depuis un navigateur.
L'appartenance d'un agent à un espace de travail se lit dans la base, pas dans son jeton : un retrait d'accès prend effet à la requête suivante, pas dans l'heure qui suit. C'est la différence qui compte le jour où quelqu'un quitte l'équipe.
Le visiteur de votre boutique n'a pas de compte. Sa session est anonyme et ne peut lire que sa propre conversation.
Les secrets
Aucune clé n'est dans le code. Elles vivent dans Google Secret Manager et sont lues au moment de l'exécution. Le jeton de votre boutique Shopify est chiffré et rattaché à votre espace de travail : il n'est jamais renvoyé au navigateur, même au vôtre.
Ce qui est vérifié, et pas seulement déclaré
Les webhooks de Shopify et de Meta sont validés par signature, calculée sur les octets reçus. Les fichiers envoyés sont vérifiés par leurs premiers octets, pas par ce que le navigateur déclare : quelqu'un peut dire « c'est une image » et envoyer autre chose.
Ce qui se passe est enregistré avec l'identifiant du client, de la conversation et du site — jamais avec le contenu d'un message, ni un courriel, ni un numéro de téléphone. Les journaux sont vus par plus de monde que la base de données.
Ce qui n'est pas encore fait
Nous l'écrivons parce qu'une page de sécurité qui n'énumère que des vertus ne se croit pas, et à juste titre.
Il n'y a pas encore d'environnement d'essai séparé
Les déploiements vont directement en production. C'est le risque le plus important de cette liste et c'est celui sur lequel nous travaillons en premier.
Il n'y a pas encore de sauvegarde automatique quotidienne
Les données sont chez Google Cloud, qui a sa propre redondance, mais une suppression accidentelle ne se défait pas aujourd'hui. Une exportation quotidienne est en cours de mise en place.
La politique de contenu du navigateur est en mode rapport
Elle est déclarée et observée, mais elle ne bloque pas encore. Une politique mal calibrée casse la console au lieu de la protéger, alors nous regardons ce qu'elle signale avant de l'activer.
Nous n'avons pas de certification SOC 2 ni ISO 27001
Nous sommes une petite équipe de Montréal. Si votre organisation l'exige, nous ne sommes pas le bon choix aujourd'hui, et nous préférons vous le dire ici qu'après trois réunions.
Si quelque chose arrive
La Loi 25 du Québec nous oblige à vous avertir d'un incident de confidentialité qui présente un risque sérieux. Nous le ferons, et nous publierons ce qui s'est passé.
Une question que cette page ne couvre pas ? Écrivez-nous dans la bulle en bas à droite : c'est nous qui répondons.