Skip to content

Registre des traitements & conformité RGPD

Type de document : Registre des activités de traitement (Article 30 RGPD)
Réglementation : Règlement (UE) 2016/679 — RGPD
Version Repod : 1.x
Date de mise à jour : 2026-06-02
Responsable du document : Délégué à la Protection des Données (DPD) de l'organisation déployant Repod


Repod est un outil B2B auto-hébergé

Repod ne collecte aucune donnée pour le compte d'Anthropic ou de l'éditeur. L'organisation qui déploie Repod est seule responsable de traitement au sens de l'Article 4(7) RGPD. Ce document fournit le registre prérempli que cette organisation doit adapter et conserver.


1. Responsable de traitement

À compléter par l'organisation déployante :

Champ Valeur
Dénomination sociale (À compléter)
Adresse du siège (À compléter)
Contact DPD (À compléter — obligatoire si article 37 applicable)
Représentant UE (si hors UE) (À compléter si applicable)

2. Registre des activités de traitement (Article 30 RGPD)

Traitement T-01 — Gestion des comptes utilisateurs

Champ Article 30 Détail
Finalité Authentification et contrôle d'accès à l'interface d'administration Repod
Base légale Intérêt légitime (Art. 6(1)(f)) — sécurité du système d'information interne
Catégories de personnes concernées Employés et prestataires autorisés à gérer le dépôt APT interne
Catégories de données Identifiant (username), adresse e-mail, hash bcrypt du mot de passe (non réversible), nom complet, rôle RBAC (admin, maintainer, uploader, auditor, reader), flag MFA, secret TOTP (chiffré), compteur d'échecs de connexion, horodatage de verrouillage, date de dernière connexion
Destinataires Administrateurs Repod uniquement — aucun transfert vers des tiers
Transferts hors UE Aucun (auto-hébergé)
Durée de conservation Durée de la relation de travail/prestation + 1 an après désactivation du compte
Mesures de sécurité bcrypt rounds=12, HMAC-SHA256 pour tokens API, MFA TOTP optionnel, lockout après 10 tentatives échouées, chiffrement au repos recommandé (LUKS/dm-crypt)
Fichier/base repos/auth/users.db (SQLite WAL)

Traitement T-02 — Journal d'authentification

Champ Article 30 Détail
Finalité Détection des tentatives d'intrusion, forensics en cas d'incident de sécurité
Base légale Obligation légale (Art. 6(1)(c)) — Article 32 RGPD (sécurité du traitement) ; intérêt légitime pour la détection d'intrusion
Catégories de personnes concernées Toute personne tentant de s'authentifier sur l'instance Repod
Catégories de données Adresse IP source, username saisi, résultat (SUCCESS/FAILURE), horodatage, type d'événement (LOGIN, LOGOUT, TOKEN_USE)
Destinataires Administrateurs Repod, équipe SSI de l'organisation
Transferts hors UE Aucun (auto-hébergé)
Durée de conservation 90 jours par défaut (configurable via retention_days dans les paramètres Repod)
Mesures de sécurité Logs JSONL append-only (aucune API de suppression), accès rôle auditor minimum
Fichier/base repos/audit/audit_*.jsonl

Traitement T-03 — Inventaire des clients SSH (agents)

Champ Article 30 Détail
Finalité Inventaire des paquets installés sur les serveurs gérés, détection des paquets vulnérables
Base légale Intérêt légitime (Art. 6(1)(f)) — gestion des vulnérabilités dans le parc informatique
Catégories de personnes concernées Administrateurs systèmes responsables des serveurs enregistrés
Catégories de données Adresse IP ou hostname du serveur, empreinte SHA-256 de la clé SSH hôte (TOFU), liste des paquets installés (nom + version), horodatage du dernier scan, OS/distribution
Destinataires Administrateurs Repod, équipe SSI
Transferts hors UE Aucun (auto-hébergé)
Durée de conservation Durée de vie du serveur dans l'inventaire + 30 jours après suppression manuelle
Mesures de sécurité Connexion SSH authentifiée par clé, politique TOFU avec détection de mismatch, aucun stockage de clé privée des serveurs cibles
Fichier/base repos/auth/inventory.db (SQLite WAL) — tables clients, packages, ssh_known_hosts

Traitement T-04 — Journal d'audit des actions métier

Champ Article 30 Détail
Finalité Traçabilité réglementaire des opérations sur les paquets (upload, suppression, décisions RSSI, installation), conformité NIS2 Article 21
Base légale Obligation légale (Art. 6(1)(c)) pour les entités soumises à NIS2 ; intérêt légitime sinon
Catégories de personnes concernées Utilisateurs Repod effectuant des actions (uploads, suppressions, décisions CVE)
Catégories de données Username, rôle, action effectuée, résultat, nom du paquet concerné, version, détail technique, horodatage, adresse IP (si transmise par proxy)
Destinataires Administrateurs Repod, auditeurs (auditor), équipe SSI, direction (rapports)
Transferts hors UE Aucun (auto-hébergé)
Durée de conservation 90 jours par défaut ; recommandé 1 an pour conformité NIS2 (retention_days=365)
Mesures de sécurité Append-only, rôle auditor requis pour consultation, aucune API de modification
Fichier/base repos/audit/audit_*.jsonl

Traitement T-05 — Tokens d'API CI/CD

Champ Article 30 Détail
Finalité Authentification des pipelines d'intégration continue sans mot de passe interactif
Base légale Intérêt légitime (Art. 6(1)(f)) — automatisation sécurisée
Catégories de personnes concernées Administrateurs créant les tokens (indirectement : identifiant du créateur conservé)
Catégories de données Nom fonctionnel du token (ex: ci-pipeline-prod), rôle associé, identifiant du créateur (username admin), hash HMAC-SHA256 du token (non réversible), dates de création/expiration/dernière utilisation
Destinataires Administrateurs Repod uniquement
Transferts hors UE Aucun
Durée de conservation Jusqu'à révocation explicite ou expiration ; suppression immédiate sur révocation
Mesures de sécurité HMAC-SHA256 keyed sur JWT_SECRET_KEY, token jamais stocké en clair, préfixe repod_ pour identification, révocable à tout moment
Fichier/base Table api_tokens dans repos/auth/users.db

Traitement T-06 — Webhooks GitHub Advisory / CISA KEV

Champ Article 30 Détail
Finalité Réception automatique d'alertes de vulnérabilités depuis des sources externes
Base légale Intérêt légitime (Art. 6(1)(f)) — veille sur les vulnérabilités
Catégories de personnes concernées Aucune personne physique directement concernée (données techniques uniquement)
Catégories de données Métadonnées de CVE (ID, score CVSS, packages affectés), payload HMAC signé, timestamp de réception
Destinataires Système Repod interne uniquement
Transferts hors UE Données reçues depuis GitHub (US) — flux entrant uniquement, aucun renvoi
Durée de conservation Identique aux CVE en base : durée de vie du paquet concerné
Mesures de sécurité Vérification HMAC-SHA256 du WEBHOOK_SECRET sur chaque payload, rejet des payloads non signés
Fichier/base Base CVE interne + logs d'audit

3. Droits des personnes concernées

Tableau des droits applicables (Articles 15–22 RGPD)

Droit Applicable ? Modalité d'exercice dans Repod
Accès (Art. 15) Export des données utilisateur via l'API GET /auth/users/{id} (admin) ou demande au DPD
Rectification (Art. 16) Modification via PATCH /auth/users/{id} par un admin ou le DPD
Effacement (Art. 17) ⚠️ Partiel Suppression du compte possible ; les logs d'audit sont conservés (obligation légale Art. 17(3)(b))
Limitation (Art. 18) Désactivation du compte (is_active=false) sans suppression
Portabilité (Art. 20) Export JSON via API ou dump SQLite
Opposition (Art. 21) ⚠️ Applicable pour les logs d'authentification — demande à traiter par le DPD
Décision automatisée (Art. 22) ✅ N/A Aucune décision automatisée affectant les personnes (le lockout brute-force porte sur la sécurité système)

Procédure d'exercice des droits

  1. La personne concernée adresse sa demande au DPD de l'organisation par e-mail ou formulaire interne.
  2. Le DPD dispose de 30 jours pour répondre (Art. 12(3) RGPD).
  3. Pour les opérations techniques (extraction, suppression), le DPD coordonne avec l'administrateur Repod.
  4. Toute demande d'exercice de droits est elle-même loguée dans le journal d'audit avec action GDPR_REQUEST.

4. Mesures de sécurité techniques et organisationnelles (Article 32)

Mesures techniques implémentées dans Repod

Mesure Implémentation
Chiffrement des mots de passe bcrypt avec 12 rounds de salt — irréversible
Chiffrement des tokens API HMAC-SHA256 keyed sur JWT_SECRET_KEY — résistant aux rainbow tables
Authentification forte MFA TOTP (RFC 6238) disponible, lockout après 10 tentatives échouées
Contrôle d'accès RBAC 5 rôles avec principe de moindre privilège
Journalisation d'audit Append-only JSONL, accès restreint au rôle auditor
SSH sécurisé Politique TOFU avec détection de MitM (SSHHostKeyMismatchError)
Validation des webhooks HMAC-SHA256 obligatoire en production (WEBHOOK_SECRET)
Scan antivirus ClamAV sur chaque fichier uploadé
Scan de vulnérabilités Grype (NVD + GitHub Advisory + CISA KEV) sur chaque upload
Transport chiffré HTTPS/TLS recommandé via reverse proxy (voir documentation déploiement)
Intégrité des paquets Signature GPG + vérification SHA-256 vs index upstream

Mesures organisationnelles recommandées à l'organisation déployante

  • Chiffrement du volume hébergeant repos/ (LUKS, dm-crypt, VeraCrypt)
  • Backup chiffré avec clé GPG dédiée (voir backup.sh)
  • Cloisonnement réseau : Repod accessible uniquement depuis le réseau interne
  • Politique de mot de passe (longueur minimale 12 caractères) appliquée via LDAP/AD
  • Revue trimestrielle des comptes actifs et des tokens API
  • Procédure de notification de violation de données (Art. 33 RGPD — 72h à la CNIL)
  • Registre des incidents de sécurité tenu à jour

5. Durées de conservation — synthèse

Données Durée par défaut Configuration Base légale
Comptes utilisateurs actifs Durée d'activité Suppression manuelle Nécessité contractuelle
Comptes désactivés +1 an Suppression manuelle Intérêt légitime (audit)
Logs d'authentification 90 jours retention_days (settings) Art. 32 RGPD / NIS2
Journal d'audit métier 90 jours retention_days (settings) Art. 32 RGPD / NIS2
Tokens API Jusqu'à révocation expires_days à la création Nécessité fonctionnelle
Inventaire SSH Durée de vie du serveur Suppression manuelle Intérêt légitime
Snapshots packages 90 jours (anciens) package_retention_days Intérêt légitime

Recommandation NIS2

Pour les entités soumises à la directive NIS2, il est recommandé de configurer retention_days = 365 afin de maintenir 12 mois d'historique d'audit.


6. Analyse d'impact relative à la protection des données (AIPD)

Évaluation du risque résiduel

Une AIPD formelle (Art. 35 RGPD) est requise si l'organisation déployante :

  • Traite des données sensibles (Art. 9 RGPD) sur les serveurs inventoriés
  • Déploie Repod pour gérer des paquets dans un contexte de santé, justice ou sécurité nationale
  • Utilise Repod pour plus de 5 000 personnes concernées indirectement

Risques résiduels identifiés dans Repod v1.x :

Risque Probabilité Impact Mesure de mitigation
Accès non autorisé à users.db (compromission serveur) Faible Élevé Chiffrement du volume + backup chiffré GPG
Exfiltration des logs d'audit via API Très faible Moyen Rôle auditor requis, rate limiting
Réutilisation de token API compromis Faible Élevé Révocation immédiate possible, expiration courte recommandée
Logs d'authentification contenant des IPs personnelles Faible Faible Rétention 90 jours, pas d'export automatique
python-jose CVE-2024-33664 (JWT) Moyen Moyen Migrer vers joserfc ou PyJWT — voir roadmap Sprint 3

7. Sous-traitants et transferts hors UE

Repod étant entièrement auto-hébergé, il n'y a aucun sous-traitant par défaut.

Exception — si l'organisation active les intégrations suivantes :

Intégration Sous-traitant Pays Mécanisme de transfert Données transférées
GitHub Advisory webhook GitHub, Inc. États-Unis SCC (Standard Contractual Clauses) Métadonnées CVE uniquement (pas de données personnelles)
CISA KEV webhook CISA (US Gov) États-Unis Pas de transfert (flux entrant public) Aucune donnée personnelle
LDAP/Active Directory Annuaire interne (Interne) N/A Username, e-mail, groupes
SMTP (notifications e-mail) Prestataire SMTP (À compléter) SCC si hors UE Adresse e-mail du destinataire

8. Politique de confidentialité utilisateur (modèle)

Ce modèle est à adapter et à publier à l'attention des utilisateurs de votre instance Repod.


Notice d'information — Traitement de vos données personnelles

Qui traite vos données ? [Nom de l'organisation], [adresse], responsable de traitement, met en œuvre Repod pour la gestion de son dépôt APT interne.

Pourquoi vos données sont-elles traitées ? Vos données (identifiant, e-mail, actions effectuées) sont traitées exclusivement pour : - Vous permettre d'accéder à l'outil selon vos habilitations ; - Assurer la traçabilité des opérations pour des raisons de sécurité et de conformité réglementaire.

Combien de temps ? Votre compte est conservé durant votre relation contractuelle avec [l'organisation] et supprimé dans l'année suivant sa désactivation. Les traces d'audit sont conservées [90 jours / 1 an — à compléter].

Quels sont vos droits ? Vous pouvez exercer vos droits d'accès, de rectification, d'effacement (dans les limites légales) et de limitation en contactant [adresse DPD]. Vous pouvez également saisir la CNIL (www.cnil.fr).


9. Annexe — Accord de traitement des données (DPA / Data Processing Agreement)

À utiliser si Repod est déployé par un prestataire pour le compte d'un client (relation responsable → sous-traitant).


Accord de traitement des données — modèle

Entre : - Le Responsable de traitement : [Nom du client], ci-après « le Client » - Le Sous-traitant : [Nom du prestataire déployant Repod], ci-après « le Prestataire »

Date d'entrée en vigueur : À compléter

Article 1 — Objet et durée

Le Prestataire traite des données personnelles pour le compte du Client dans le cadre du déploiement et de l'exploitation du logiciel Repod (gestionnaire de dépôt APT interne). Le présent accord entre en vigueur à la date de signature et reste en vigueur pour la durée du contrat principal.

Article 2 — Nature et finalité du traitement

Paramètre Détail
Nature Stockage, consultation, suppression de données d'authentification et d'audit
Finalité Exploitation du dépôt APT interne, traçabilité des opérations
Type de données Voir registre des traitements §2 (T-01 à T-05)
Personnes concernées Employés et prestataires du Client

Article 3 — Obligations du Sous-traitant (Art. 28 RGPD)

Le Prestataire s'engage à :

  1. Ne traiter les données qu'aux seules fins définies à l'Article 2 et sur instruction documentée du Client.
  2. Garantir la confidentialité des données — les personnes autorisées à traiter les données sont soumises à une obligation de confidentialité.
  3. Mettre en œuvre les mesures de sécurité visées à l'Article 32 RGPD, notamment celles décrites au §4 du présent registre.
  4. Ne pas faire appel à un autre sous-traitant sans autorisation préalable écrite du Client. En cas d'autorisation, le même niveau de protection est imposé par contrat au sous-traitant ultérieur.
  5. Assister le Client dans l'exercice des droits des personnes concernées et dans ses obligations au titre des Articles 32 à 36 RGPD.
  6. Supprimer ou restituer toutes les données personnelles à l'issue du contrat, au choix du Client, et supprimer les copies existantes.
  7. Mettre à disposition toutes les informations nécessaires pour démontrer le respect des obligations RGPD et permettre les audits.

Article 4 — Obligations du Responsable de traitement

Le Client s'engage à :

  1. Fournir des instructions documentées et licites au Prestataire.
  2. Assurer l'information préalable des personnes concernées (§8 de ce document).
  3. S'assurer que le traitement dispose d'une base légale valide.
  4. Notifier toute violation de données à la CNIL dans le délai de 72 heures (Art. 33 RGPD).

Article 5 — Sécurité et violations de données

En cas de violation de données affectant les données personnelles du Client, le Prestataire notifie le Client dans les 24 heures suivant la détection, avec : - Nature de la violation - Catégories et volume de données concernées - Mesures prises ou envisagées

Article 6 — Droit applicable

Le présent accord est régi par le droit français. En cas de litige, les parties s'engagent à rechercher une solution amiable avant tout recours judiciaire.


Fin du registre des traitements et du modèle DPA.

Document à réviser annuellement ou lors de toute évolution significative des traitements.