145 lines
11 KiB
PHP
145 lines
11 KiB
PHP
|
|
@extends('layouts.vitrine')
|
|||
|
|
|
|||
|
|
@section('titre', 'Confidentialité et RGPD')
|
|||
|
|
|
|||
|
|
{{-- Étape 14 : chaque affirmation de cette page a été vérifiée sur le système
|
|||
|
|
réel (docs/journal.md, étape 14). À mettre à jour à chaque nouveau
|
|||
|
|
traitement de données. --}}
|
|||
|
|
@section('contenu')
|
|||
|
|
<section class="border-b border-[#e3e5e8] bg-white">
|
|||
|
|
<div class="mx-auto max-w-7xl px-5 pb-14 pt-14 lg:px-10">
|
|||
|
|
<p class="inline-block border border-[#dadce0] rounded-lg bg-[#e6f4ea] px-3 py-1 text-sm font-bold">Confidentialité et RGPD</p>
|
|||
|
|
<h1 class="mt-8 max-w-4xl text-6xl font-extrabold leading-[1.05] tracking-tight sm:text-7xl">Ce que nous savons de vous, et pourquoi.</h1>
|
|||
|
|
<p class="mt-6 font-mono text-sm font-semibold">Dernière mise à jour : 9 octobre 2026</p>
|
|||
|
|
</div>
|
|||
|
|
</section>
|
|||
|
|
<div class="mx-auto grid max-w-7xl gap-10 px-5 py-14 lg:grid-cols-12 lg:px-10">
|
|||
|
|
<nav class="lg:col-span-3" aria-label="Sommaire">
|
|||
|
|
<ol class="sticky top-6 grid gap-2 font-extrabold">
|
|||
|
|
<li><a href="#responsable" class="block border border-[#e3e5e8] rounded-2xl bg-white px-4 py-2">Qui est responsable</a></li>
|
|||
|
|
<li><a href="#donnees" class="block border border-[#e3e5e8] rounded-2xl bg-white px-4 py-2">Données traitées</a></li>
|
|||
|
|
<li><a href="#durees" class="block border border-[#e3e5e8] rounded-2xl bg-white px-4 py-2">Durées de conservation</a></li>
|
|||
|
|
<li><a href="#hebergement" class="block border border-[#e3e5e8] rounded-2xl bg-white px-4 py-2">Hébergement et tiers</a></li>
|
|||
|
|
<li><a href="#securite" class="block border border-[#e3e5e8] rounded-2xl bg-white px-4 py-2">Sécurité</a></li>
|
|||
|
|
<li><a href="#cookies" class="block border border-[#e3e5e8] rounded-2xl bg-white px-4 py-2">Cookies</a></li>
|
|||
|
|
<li><a href="#droits" class="block border border-[#e3e5e8] rounded-2xl bg-white px-4 py-2">Vos droits</a></li>
|
|||
|
|
<li><a href="#sous-traitance" class="block border border-[#e3e5e8] rounded-2xl bg-white px-4 py-2">Sous-traitance (art. 28)</a></li>
|
|||
|
|
</ol>
|
|||
|
|
</nav>
|
|||
|
|
<div class="grid gap-12 lg:col-span-9 [&_section]:scroll-mt-6 [&_section]:rounded-2xl [&_section]:border [&_section]:border-[#e3e5e8] [&_section]:bg-white [&_section]:p-7 [&_h2]:text-4xl [&_h2]:font-extrabold [&_h2]:tracking-tight [&_h3]:mt-4 [&_h3]:text-xl [&_h3]:font-extrabold [&_ul]:grid [&_ul]:gap-2 [&_ul]:pl-5 [&_li]:list-disc">
|
|||
|
|
|
|||
|
|
<section id="responsable" aria-labelledby="t-responsable">
|
|||
|
|
<h2 id="t-responsable">Qui est responsable</h2>
|
|||
|
|
<div class="mt-6 grid gap-4 text-lg font-medium leading-relaxed">
|
|||
|
|
<p>Syllabus est édité par Esquisse Formation (voir les <a href="{{ route('legal') }}#mentions" class="font-bold underline underline-offset-4">mentions légales</a>).</p>
|
|||
|
|
<p>Quand un établissement utilise Syllabus avec ses élèves, <strong>l’établissement est responsable du traitement</strong> et Esquisse Formation agit comme <strong>sous-traitant</strong>, sur ses instructions. Pour les comptes enseignants, Esquisse Formation est responsable du traitement.</p>
|
|||
|
|
<p>Délégué à la protection des données : <mark class="bg-[#fef7e0] px-1 font-bold">[à compléter si désigné]</mark>. Contact : adam@belkacemi.me</p>
|
|||
|
|
</div>
|
|||
|
|
</section>
|
|||
|
|
|
|||
|
|
<section id="donnees" aria-labelledby="t-donnees">
|
|||
|
|
<h2 id="t-donnees">Données traitées</h2>
|
|||
|
|
<div class="mt-6 grid gap-4 text-lg font-medium leading-relaxed">
|
|||
|
|
<h3>Élèves</h3>
|
|||
|
|
<ul>
|
|||
|
|
<li>prénom, nom (facultatif, visible du seul enseignant), classe ;</li>
|
|||
|
|
<li>identifiant de connexion et code secret (le code est stocké sous forme hachée, illisible, y compris pour nous) ;</li>
|
|||
|
|
<li><strong>aucune adresse e-mail</strong> ;</li>
|
|||
|
|
<li>sessions de lab : date, état, machines virtuelles attribuées ;</li>
|
|||
|
|
<li>résultats de la vérification automatique (réussi ou non, note, message par vérification).</li>
|
|||
|
|
</ul>
|
|||
|
|
<p>Ce que l’élève tape dans la console de sa machine virtuelle n’est pas enregistré par Syllabus. Son enseignant peut suivre la console en direct, en lecture seule, pendant la séance.</p>
|
|||
|
|
<h3>Enseignants</h3>
|
|||
|
|
<ul>
|
|||
|
|
<li>nom, adresse e-mail, établissement ;</li>
|
|||
|
|
<li>mot de passe, stocké sous forme hachée.</li>
|
|||
|
|
</ul>
|
|||
|
|
<h3>Journaux techniques</h3>
|
|||
|
|
<ul>
|
|||
|
|
<li>journaux du serveur web : adresse IP, date, page demandée ;</li>
|
|||
|
|
<li>journaux de l’application : erreurs et événements techniques, sans contenu des pages.</li>
|
|||
|
|
</ul>
|
|||
|
|
<h3>Finalités et bases légales</h3>
|
|||
|
|
<p>Fournir le service d’enseignement demandé par l’établissement (mission d’intérêt public de l’établissement, article 6.1.e du RGPD) ou par l’enseignant (exécution du contrat, article 6.1.b). Les journaux techniques servent à la sécurité et au bon fonctionnement du service (intérêt légitime, article 6.1.f). Aucune donnée n’est vendue, utilisée à des fins publicitaires, ni traitée par une intelligence artificielle.</p>
|
|||
|
|
</div>
|
|||
|
|
</section>
|
|||
|
|
|
|||
|
|
<section id="durees" aria-labelledby="t-durees">
|
|||
|
|
<h2 id="t-durees">Durées de conservation</h2>
|
|||
|
|
<div class="mt-6 grid gap-4 text-lg font-medium leading-relaxed">
|
|||
|
|
<ul>
|
|||
|
|
<li><strong>Machines virtuelles</strong> et leur contenu : supprimées à la fin de la session de lab (45 minutes par défaut).</li>
|
|||
|
|
<li><strong>Classe et données de ses élèves</strong> : jusqu’à l’archivage de la classe par l’enseignant, puis <strong>supprimées automatiquement 90 jours après l’archivage</strong>.</li>
|
|||
|
|
<li><strong>Compte enseignant</strong> : tant qu’il est utilisé ; supprimé sur demande.</li>
|
|||
|
|
<li><strong>Journaux techniques</strong> : 14 jours.</li>
|
|||
|
|
<li><strong>Sauvegardes</strong> : chiffrées, conservées au plus 5 semaines (7 sauvegardes quotidiennes et 4 hebdomadaires). Une donnée supprimée disparaît donc des sauvegardes au plus tard 5 semaines après sa suppression.</li>
|
|||
|
|
</ul>
|
|||
|
|
</div>
|
|||
|
|
</section>
|
|||
|
|
|
|||
|
|
<section id="hebergement" aria-labelledby="t-hebergement">
|
|||
|
|
<h2 id="t-hebergement">Hébergement et services tiers</h2>
|
|||
|
|
<div class="mt-6 grid gap-4 text-lg font-medium leading-relaxed">
|
|||
|
|
<p>Le service, ses bases de données et ses sauvegardes chiffrées sont <strong>hébergés en France</strong>, chez Scaleway. Les données des comptes ne quittent pas l’Union européenne.</p>
|
|||
|
|
<p>Les pages de l’espace connecté (élèves et enseignants) ne chargent <strong>aucune ressource depuis un service tiers</strong> : polices, scripts et styles sont servis par Syllabus.</p>
|
|||
|
|
<p>Certaines pages publiques de présentation font encore appel à des services tiers, qui reçoivent alors l’adresse IP du visiteur :</p>
|
|||
|
|
<ul>
|
|||
|
|
<li>des pages d’aperçu chargent la bibliothèque de styles Tailwind depuis <span class="font-mono">cdn.tailwindcss.com</span> (Tailwind Labs, États-Unis) ;</li>
|
|||
|
|
<li>l’éditeur de code <span class="font-mono">/ide</span> télécharge Python (Pyodide) et SQL (sql.js) depuis <span class="font-mono">cdn.jsdelivr.net</span>, seulement quand on exécute du code ;</li>
|
|||
|
|
<li>la page d’aperçu d’un cours peut afficher une vidéo depuis <span class="font-mono">youtube-nocookie.com</span>, seulement si un lien vidéo y est ajouté.</li>
|
|||
|
|
</ul>
|
|||
|
|
<p>Nous travaillons à servir ces ressources nous-mêmes.</p>
|
|||
|
|
</div>
|
|||
|
|
</section>
|
|||
|
|
|
|||
|
|
<section id="securite" aria-labelledby="t-securite">
|
|||
|
|
<h2 id="t-securite">Sécurité</h2>
|
|||
|
|
<div class="mt-6 grid gap-4 text-lg font-medium leading-relaxed">
|
|||
|
|
<ul>
|
|||
|
|
<li>connexions chiffrées (HTTPS, TLS 1.2 et 1.3) ;</li>
|
|||
|
|
<li>mots de passe et codes secrets hachés ;</li>
|
|||
|
|
<li>une machine virtuelle par élève, isolée, sans accès à Internet ;</li>
|
|||
|
|
<li>la vérification automatique n’exécute que des commandes définies à l’avance par le lab, jamais de commande libre ;</li>
|
|||
|
|
<li>sauvegardes chiffrées avant leur envoi, restauration testée chaque semaine ;</li>
|
|||
|
|
<li>administration du serveur par clé SSH uniquement.</li>
|
|||
|
|
</ul>
|
|||
|
|
</div>
|
|||
|
|
</section>
|
|||
|
|
|
|||
|
|
<section id="cookies" aria-labelledby="t-cookies">
|
|||
|
|
<h2 id="t-cookies">Cookies</h2>
|
|||
|
|
<div class="mt-6 grid gap-4 text-lg font-medium leading-relaxed">
|
|||
|
|
<p>Syllabus n’utilise que deux cookies, strictement nécessaires : <span class="font-mono">syllabus-session</span>, qui vous garde connecté, et <span class="font-mono">XSRF-TOKEN</span>, qui protège les formulaires. Aucun cookie publicitaire ni de mesure d’audience. Ils ne demandent donc pas de consentement.</p>
|
|||
|
|
<p>L’éditeur de code et la page de visio gardent aussi, dans le stockage local de votre navigateur, votre code et une préférence d’affichage. Ces informations ne nous sont pas transmises.</p>
|
|||
|
|
</div>
|
|||
|
|
</section>
|
|||
|
|
|
|||
|
|
<section id="droits" aria-labelledby="t-droits">
|
|||
|
|
<h2 id="t-droits">Vos droits</h2>
|
|||
|
|
<div class="mt-6 grid gap-4 text-lg font-medium leading-relaxed">
|
|||
|
|
<p>Vous disposez des droits d’accès, de rectification, d’effacement, de limitation, d’opposition et de portabilité. Élèves et familles : adressez-vous d’abord à l’enseignant ou à l’établissement, responsable du traitement. Enseignants : écrivez à adam@belkacemi.me.</p>
|
|||
|
|
<p>Vous pouvez aussi adresser une réclamation à la CNIL (<span class="font-mono">cnil.fr</span>).</p>
|
|||
|
|
</div>
|
|||
|
|
</section>
|
|||
|
|
|
|||
|
|
<section id="sous-traitance" aria-labelledby="t-sous-traitance">
|
|||
|
|
<h2 id="t-sous-traitance">Sous-traitance (article 28 du RGPD)</h2>
|
|||
|
|
<div class="mt-6 grid gap-4 text-lg font-medium leading-relaxed">
|
|||
|
|
<p>Pour chaque établissement, un accord de sous-traitance peut être établi sur demande. Il précise :</p>
|
|||
|
|
<ul>
|
|||
|
|
<li>l’objet, la durée et la nature des traitements ;</li>
|
|||
|
|
<li>les mesures de sécurité décrites ci-dessus ;</li>
|
|||
|
|
<li>la confidentialité des personnes autorisées ;</li>
|
|||
|
|
<li>les sous-traitants ultérieurs : hébergement et sauvegardes chez Scaleway (France) ;</li>
|
|||
|
|
<li>l’assistance pour répondre aux demandes d’exercice des droits ;</li>
|
|||
|
|
<li>la notification des violations de données ;</li>
|
|||
|
|
<li>la suppression ou la restitution des données en fin de contrat.</li>
|
|||
|
|
</ul>
|
|||
|
|
<p>Demande : adam@belkacemi.me</p>
|
|||
|
|
</div>
|
|||
|
|
</section>
|
|||
|
|
|
|||
|
|
</div>
|
|||
|
|
</div>
|
|||
|
|
@endsection
|