TselCloud

Confidentialité et sécurité

Comprenez comment vos accès sont gérés.

Chaque protection ci-dessous porte son périmètre, sa preuve technique et son statut réel. Ce qui n'est pas construit est rangé à part, avec la raison de son absence.

Ce qui protège vos fichiers, et jusqu'où.

Trois statuts, et leur frontière est nette. Vérifié veut dire qu'une vérification a exercé le mécanisme, et la carte dit laquelle. Implémenté veut dire que le mécanisme existe et que rien ne l'a exercé sur l'environnement cible — il ne prétend pas être vérifié.

  • Vérifié dans les conditions indiquées

    Privé par défaut

    Une ressource importée n'est visible que dans votre espace tant que vous ne créez pas de partage.

    Périmètre
    Porte sur les fichiers, les dossiers et leurs dérivés. Aucune ressource n'est accessible sans session valide ou jeton de partage.
    Preuve
    `src/server/authorization.ts`, `tests/isolation.test.ts`
    Vérification effectuée
    Des tests d'intégration s'exécutent contre la vraie base : ils créent deux espaces et vérifient qu'aucune requête de l'un ne rend une ressource de l'autre.
  • Vérifié dans les conditions indiquées

    Les accès sont décidés par le serveur

    Chaque ouverture, vignette ou téléchargement est autorisé côté serveur, pas seulement masqué dans l'interface.

    Périmètre
    Les trois URL distinctes — vignette, aperçu et téléchargement — passent par le même contrôle. Masquer un bouton n'a jamais protégé un fichier.
    Preuve
    `src/server/uploads.ts`, `src/server/derivatives.ts`, `tests/authorization.test.ts`
    Vérification effectuée
    Une suite d'autorisation exerce chaque rôle contre la vraie base, y compris les escalades refusées.
    Voir l'essai correspondant
  • Implémenté, non vérifié sur l'environnement cible

    Un partage se retire

    Un lien vise une ressource précise, porte une expiration et se révoque depuis l'espace.

    Périmètre
    Porte sur les liens créés par `createShare`. La révocation empêche toute nouvelle résolution du jeton.
    Preuve
    `convex/collaboration.ts` (`openLink`, `rotateLink`, `closeLink`, `resolveLink`)

    Ce que cela ne fait pas : Une URL signée déjà obtenue reste utilisable jusqu'à son expiration : la révocation empêche d'en obtenir de nouvelles, elle ne rappelle pas celles qui circulent. Présenter la révocation comme instantanée serait faux.

    Voir l'essai correspondant
  • Vérifié dans les conditions indiquées

    Le contenu est confronté au type annoncé

    Les octets d'un fichier sont lus avant qu'il soit servi : un exécutable déguisé en PDF est refusé.

    Périmètre
    Porte sur les 512 premiers octets et les signatures connues. Les formats textuels, sans signature possible, sont acceptés mais jamais rendus dans la page.
    Preuve
    `src/lib/magic-bytes.ts`, `tests/magic-bytes.test.ts`, `tests/upload-flow.test.ts`
    Vérification effectuée
    Les tests d'import s'exécutent contre le vrai bucket et vérifient qu'un exécutable renommé est refusé.

    Ce que cela ne fait pas : Ce n'est pas un antivirus et ne remplace pas un antivirus. Il vérifie une cohérence de format, pas l'innocuité d'un contenu.

    Voir l'essai correspondant
  • Vérifié dans les conditions indiquées

    Trois conditions avant qu'un fichier soit servi

    Transfert terminé, contrôle du contenu passé, absence de suppression logique. Les trois, ou rien.

    Périmètre
    Porte sur toute lecture d'un fichier publié. L'objet en quarantaine et l'objet publié ont deux clés distinctes : une URL d'import encore valide ne peut écraser des octets déjà contrôlés.
    Preuve
    `src/lib/upload-rules.ts`, `docs/upload-state-machine.md`
    Vérification effectuée
    La machine d'états de l'import est couverte par des tests de propriété, et le flux complet par des tests d'intégration contre le bucket.
    Voir l'essai correspondant
  • Implémenté, non vérifié sur l'environnement cible

    La suppression est réversible

    Un fichier supprimé part à la corbeille, d'où il revient. La purge vient après.

    Périmètre
    Porte sur les fichiers et les dossiers. Un élément à la corbeille cesse d'être servi.
    Preuve
    `src/server/maintenance.ts`, `src/routes/app/trash.tsx`

    Ce que cela ne fait pas : Aucun ordonnanceur n'est configuré : tant que `bun run maintenance` n'est lancé par personne, la purge n'a pas lieu et la corbeille ne libère aucun octet.

    Voir l'essai correspondant
  • Implémenté, non vérifié sur l'environnement cible

    Comptes et sessions

    L'authentification est déléguée à Supabase Auth ; le serveur vérifie le jeton.

    Périmètre
    Porte sur l'accès à l'espace. Le navigateur ne parle jamais à la base directement.
    Preuve
    `src/server/auth.ts`, `src/lib/session.ts`

    Ce que cela ne fait pas : La confirmation par courriel est exigée avant la première connexion. La gestion fine des sessions actives — les lister, en révoquer une — n'est pas construite.

Ce que nous ne faisons pas

Rangé à part, et pas marqué d'un badge parmi les autres : mêlé aux protections, un projet finit toujours par se lire comme une garantie.

  • Contenu illisible par le serveur

    Le serveur ne pourrait pas lire vos fichiers, même s'il le voulait.

    Pourquoi pas : Incompatible avec le contrôle de contenu actuel, qui exige de lire les octets. Les deux ne peuvent pas coexister sans une refonte du modèle.

Aucun audit indépendant n'a eu lieu. Aucune certification n'a été obtenue. Aucune conformité réglementaire n'est revendiquée. Le dire vaut mieux que le suggérer par omission.

Essayer plutôt que croire

Plusieurs de ces protections ont un essai sur la page Fonctionnalités. Les essais qui touchent aux accès sont des simulations : ils montrent le comportement, jamais l'autorisation côté serveur.

À ne pas confondre. Un essai vert ne prouve pas la sécurité du service. Les autorisations réelles sont exercées par des suites qui interrogent la vraie base, et qui ne passent jamais par cette page.

Aucune adresse de contact dédiée n'est encore ouverte : en afficher une reviendrait à promettre une réponse.

Qui porte ce produit

Le fondateur de Connectstar, pas un label.

  • Connectstar édite TselCloud : Shavod, son fondateur, porte le produit et en assure le développement, et il en est le directeur de publication.

Ce bloc dit qui porte TselCloud, et rien d'autre. Il n'affirme aucune certification, aucun audit indépendant et aucune approbation par un tiers — rien de tel n'a eu lieu.

Comment les accès sont gérés

  • Privé par défaut

    Une ressource importée n'est visible que dans votre espace tant que vous ne créez pas de partage.

  • Accès vérifiés côté serveur

    Chaque ouverture ou téléchargement est contrôlé par le serveur, pas seulement masqué dans l'interface.

  • Partages révocables

    Un lien porte une date d'expiration et se retire depuis votre espace.

Trois phrases ne sont pas une politique. La page Sécurité indique, pour chaque protection, ce qui est vérifié, ce qui est implémenté sans l'être, et ce qui n'est que prévu.

Voir l'état réel de chaque protection