Compare commits
No commits in common. "feature/inria-architecture-data" and "main" have entirely different histories.
feature/in
...
main
|
|
@ -1,54 +0,0 @@
|
||||||
# Politique de Traitement des Données & Gouvernance ML
|
|
||||||
|
|
||||||
## 1. Cadre Général & Engagement Privacy-by-Design
|
|
||||||
|
|
||||||
Le projet RYM / Peakload traite des données relatives à la pratique sportive, à la physiologie et au suivi de la performance. Conformément au **RGPD (Règlement Général sur la Protection des Données)** et aux directives d'éthique de la recherche (INRIA / CNIL) :
|
|
||||||
* **Minimisation des données** : Seules les métriques strictement nécessaires à l'analyse de la charge et à la prévention des blessures sont collectées.
|
|
||||||
* **Chiffrement de bout en bout** : Toutes les données personnelles et physiologiques sont chiffrées en transit (TLS 1.3) et au repos (AES-256).
|
|
||||||
* **Isolation des environnements** : Séparation stricte entre les données de production, les jeux de données de test et les environnements de recherche.
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## 2. Classification des Données Traitées
|
|
||||||
|
|
||||||
| Catégorie de Donnée | Exemples | Niveau de Sensibilité | Mesures de Protection |
|
|
||||||
| :--- | :--- | :--- | :--- |
|
|
||||||
| **Données Identifiantes** | Email, Nom, Prénom, Identifiant unique | **Élevé** | Stockage chiffré, séparé des données de performance. |
|
|
||||||
| **Données Physiologiques** | VRC, Fréquence Cardiaque, Sommeil, Fatigue (RPE) | **Très Élevé (Données de Santé)** | Pseudonymisation à la source, accès restreint aux micro-services ML. |
|
|
||||||
| **Données d'Activité** | Charge d'entraînement, Durée, Type de sport | **Moyen** | Agrégation et horodatage chiffré. |
|
|
||||||
| **Données Techniques / Métriques** | Logs d'accès, IP pseudonymisées, Métriques Podman | **Faible** | Log rotation automatisé, anonymisation sous 30 jours. |
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## 3. Stratégie de Pseudonymisation & Anonymisation
|
|
||||||
|
|
||||||
Afin d'alimenter les modèles de Machine Learning tout en protégeant la vie privée des utilisateurs :
|
|
||||||
|
|
||||||
1. **Jetons de Pseudonymisation (Tokenization)** :
|
|
||||||
* L'identité réelle de l'utilisateur est dissociée de son profil physiologique via un identifiant unique universel (UUID) irréversible stocké dans un coffre-fort d'identités chiffré.
|
|
||||||
2. **Pipelines d'Anonymisation pour la Recherche / ML** :
|
|
||||||
* Les jeux de données d'entraînement pour les modèles ML sont extraits sans aucune référence personnelle.
|
|
||||||
* Injection de bruits contrôlés (Confidentialité Différentielle / *Differential Privacy*) sur les séries temporelles lors des analyses agrégées.
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## 4. Gouvernance & Éthique du Machine Learning (ML)
|
|
||||||
|
|
||||||
Afin d'éviter tout effet "Boîte Noire" et de garantir un audit carré exigé par l'INRIA :
|
|
||||||
|
|
||||||
* **Explicabilité & Traçabilité des Décisions** :
|
|
||||||
* Chaque recommandation générée par le modèle (ex: ajustement de charge d'entraînement) est accompagnée de ses facteurs explicatifs (ex: baisse de la VRC de X% + augmentation de la charge aiguë).
|
|
||||||
* **Auditabilité des Modèles** :
|
|
||||||
* Les poids des modèles, les hyperparamètres et les jeux de données d'entraînement anonymisés sont versionnés (Model Registry).
|
|
||||||
* **Supervision Humaine (*Human-in-the-loop*)** :
|
|
||||||
* L'algorithme agit comme un système d'aide à la décision. L'athlète ou le coach conserve toujours le contrôle final sur l'ajustement de son programme.
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## 5. Droits des Personnes & Cycle de Vie des Données
|
|
||||||
|
|
||||||
* **Portabilité & Exportation** : L'utilisateur peut exporter l'intégralité de ses données sous un format standard ouvert (JSON / CSV) à tout moment.
|
|
||||||
* **Droit à l'Oubli** : La suppression du compte entraîne la purge physique et définitive de l'ensemble des clés de déchiffrement associées aux données de l'utilisateur (*Crypto-shredding*).
|
|
||||||
* **Durée de Conservation** :
|
|
||||||
* Données actives : Conservées durant la durée d'utilisation du service.
|
|
||||||
* Données anonymisées de recherche : Conservées sous forme non identifiable pour l'amélioration continue des modèles.
|
|
||||||
|
|
@ -1,89 +0,0 @@
|
||||||
# Cartographie du Système d'Information & Architecture Technique RYM / Peakload
|
|
||||||
|
|
||||||
## 1. Vision & Principes d'Architecture Innovante
|
|
||||||
|
|
||||||
Le Système d'Information (SI) RYM / Peakload repose sur une architecture **Souveraine, SecOps et Privacy-by-Design**.
|
|
||||||
|
|
||||||
Pour répondre aux exigences d'agilité, de sécurité et d'auditabilité :
|
|
||||||
* **SecOps & Compliance-as-Code** : La conformité (ISO 27001 / ISO 9001) et les contrôles de sécurité (détection de secrets, vulnérabilités IaC) sont intégrés nativement dans la chaîne d'intégration continue (CI/CD).
|
|
||||||
* **Isolation Rootless** : L'ensemble des services applicatifs et des agents d'exécution fonctionnent sous **Podman** (sans privilèges root ni daemon centralisé).
|
|
||||||
* **Confidentialité & Traitement Edge/Local** : Les données sensibles de santé et de performance sportive sont traitées au plus près de l'utilisateur ou dans des micro-services isolés et chiffrés.
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## 2. Choix Technologiques & Langages à Forte Communauté
|
|
||||||
|
|
||||||
Afin de garantir la pérennité, la maintenabilité et la facilité de recrutement ou de collaboration académique/industrielle, le choix s'est porté sur les langages bénéficiant des plus vastes écosystèmes open-source au monde :
|
|
||||||
|
|
||||||
| Composant / Couche | Technologie / Langage | Justification & Atouts Communautaires |
|
|
||||||
| :--- | :--- | :--- |
|
|
||||||
| **Services Backend & ML** | **Python 3.12+ (FastAPI / PyTorch)** | Standard universel en Recherche, IA/ML et Data Science. Écosystème massif, haute performance asynchrone avec FastAPI. |
|
|
||||||
| **Applications Frontend / Mobile** | **TypeScript (Node.js / React Native)** | Typage strict, sécurité à la compilation, vaste communauté et réutilisation de code inter-plateformes (Web & Mobile). |
|
|
||||||
| **Forge & CI/CD** | **Gitea + Gitea Actions (`act_runner`)** | Solution souveraine, légère et compatible avec les workflows GitHub Actions. |
|
|
||||||
| **Conteneurisation & IaC** | **Podman / Podman-Compose** | Runtime souverain, respectueux des normes OCI, sans risque d'élévation de privilèges root. |
|
|
||||||
| **Bases de Données & Cache** | **PostgreSQL + Redis** | SGBDR robuste avec support natif des données relationnelles, séries temporelles et extensions géospatiales (PostGIS). |
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## 3. Cartographie Applicative & Flux de Données (Diagramme)
|
|
||||||
|
|
||||||
```text
|
|
||||||
[ Client Mobile / App Web ] (TypeScript / React Native)
|
|
||||||
│
|
|
||||||
│ (HTTPS / TLS 1.3 - REST & WebSockets)
|
|
||||||
▼
|
|
||||||
[ Gateway API / Proxy Reverse ] (Nginx / Caddy sur VPS Debian)
|
|
||||||
│
|
|
||||||
├───────────────┬──────────────────────────────┐
|
|
||||||
▼ ▼ ▼
|
|
||||||
[ Service Backend Core ] [ Engine ML & Analytics ] [ Forge & CI/CD ]
|
|
||||||
(Python / FastAPI) (Python / PyTorch) (Gitea + Runner)
|
|
||||||
│ │ │
|
|
||||||
▼ ▼ │
|
|
||||||
┌──────────────────────────────┐ │
|
|
||||||
│ Stockage Données & Cache │ │
|
|
||||||
│ (PostgreSQL & Redis Rootless)│ ◄─────────────────────────┘
|
|
||||||
└──────────────────────────────┘ (Audits & Scans SecOps via Podman)
|
|
||||||
```
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## 4. Modèle Machine Learning (ML) : Pertinence, Explicabilité & Traitement des Séries Temporelles
|
|
||||||
|
|
||||||
Dans le cadre du projet RYM / Peakload, l'intégration du Machine Learning répond à un besoin métier précis : la prévention du surentraînement et l'optimisation personnalisée de la charge de travail sportive.
|
|
||||||
|
|
||||||
### A. Modélisation Hybride & Déterministe
|
|
||||||
|
|
||||||
* **Pas de "Boîte Noire" Opaque** : Utilisation prioritaire d'algorithmes statistiques et de ML explicables (Séries temporelles, Modèles autorégressifs ARIMA/Prophet, XGBoost, ou réseaux de neurones légers type LSTM/TCN sous **PyTorch**).
|
|
||||||
|
|
||||||
* **Indicateurs Clés Traités** :
|
|
||||||
|
|
||||||
* Variabilité de la Fréquence Cardiaque (VRC / HRV)
|
|
||||||
* Charge Aiguë / Chronique (ACWR - *Acute:Chronic Workload Ratio*)
|
|
||||||
* Score d'énergie et de récupération perçu (RPE)
|
|
||||||
|
|
||||||
* **Pertinence Scientifique** : Les recommandations générées reposent sur des modèles physiologiques validés cliniquement et académiquement, garantissant une traçabilité totale des décisions de l'IA.
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## 5. Matrice de Sécurité & Traçabilité pour Audit (ISO 27001 / ISO 9001)
|
|
||||||
|
|
||||||
Pour garantir la traçabilité intégrale exigée lors des audits de conformité :
|
|
||||||
|
|
||||||
| Zone d'Audit | Mecanisme de Contrôle | Résultat / Livrable d'Audit |
|
|
||||||
| :--- | :--- | :--- |
|
|
||||||
| **Authentification Commits** | Signature GPG obligatoire sur Git | Commits vérifiés et non repudiables dans Gitea |
|
|
||||||
| **Détection de Secrets** | Scan automatique **Gitleaks** en CI | Log d'audit automatisé à chaque PR |
|
|
||||||
| **Analyse Vulnérabilités IaC** | Scan automatique **Trivy** en CI | Rapport de conformité des conteneurs/images OCI |
|
|
||||||
| **Protection des Branches** | Verrouillage de `main` + PR + Code Review | Traçabilité des approbations et du duo de validation |
|
|
||||||
| **Sécurité des Données** | Chiffrement AES-256 au repos & TLS 1.3 en transit | Conformité PSSI et RGPD |
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## 6. Politique de Déploiement & Résilience (PRA / DRP)
|
|
||||||
|
|
||||||
* **Architecture Invariable** : Tout changement d'infrastructure est défini par du code (*Infrastructure-as-Code*) versionné dans le dépôt `rym_infrastructure`.
|
|
||||||
* **Sauvegardes Chiffrées & Extérieures** : Automatisation des sauvegardes (données + configurations) via des mécanismes de chiffrement de bout en bout et export vers un stockage souverain hors-site.
|
|
||||||
* **Test de Restauration (DRP)** : Procédures de reconstruction à froid du SI validées périodiquement.
|
|
||||||
|
|
||||||
---
|
|
||||||
Loading…
Reference in New Issue