109 lines
4.1 KiB
Markdown
109 lines
4.1 KiB
Markdown
# SuperNounou – SSS-001
|
||
## Spécification technique & opérationnelle unifiée
|
||
_Version 0.2 – 24 avril 2025_
|
||
|
||
---
|
||
|
||
## 1. Objet
|
||
Centraliser tous les aspects **techniques et opérationnels** de la plateforme SuperNounou :
|
||
- Sauvegarde & Plan de Reprise d’Activité (PRA)
|
||
- Spécifications des API & intégrations
|
||
- Directives de déploiement, d’observabilité, de CI/CD
|
||
|
||
## 2. Portée
|
||
Instances de production, pré-production et recette (Frontend, Backend, PostgreSQL, stockage objets), scripts d’installation, pipelines CI/CD, journaux et métriques.
|
||
|
||
## 3. Références
|
||
- CDC SuperNounou V1.1
|
||
- ISO 27001 / ISO 22301 bonnes pratiques
|
||
- Politique sécurité DSI Enedis #SEC-POL-2024
|
||
- RGPD (2016/679)
|
||
|
||
---
|
||
|
||
# A – Sauvegarde & Plan de Reprise d’Activité
|
||
|
||
### A.1 Architecture de sauvegarde
|
||
Schéma bloc, chiffrement AES-256 (KMS), réplication hors-site « Object Storage B ».
|
||
|
||
### A.2 Stratégie de sauvegarde
|
||
|
||
| Type | Fréquence | Rétention | Support |
|
||
|-------------------|-------------|-----------|--------------------|
|
||
| Incrémentale | Quotidienne | 30 j | Object Storage A |
|
||
| Complète | Hebdomadaire| 6 mois | Object Storage B |
|
||
| Export logique DB | Mensuelle | 5 ans | Stockage Glacier |
|
||
|
||
### A.3 PRA
|
||
RPO 24 h / RTO 4 h – scénarios : panne VM, corruption DB, sinistre DC – procédure détaillée + escalade.
|
||
|
||
### A.4 Tests de restauration
|
||
Intégrale semestrielle, partielle trimestrielle – rapport d’audit et actions correctives.
|
||
|
||
### A.5 Monitoring & alertes
|
||
Endpoint Prometheus `/metrics`, tableau Grafana « Backup status », alerte > 26 h sans backup.
|
||
|
||
### A.6 Rôles
|
||
DevOps Lead (implémentation), DBA (tests restore), RSSI (audit).
|
||
|
||
---
|
||
|
||
# B – API & Intégrations
|
||
|
||
### B.1 Conventions
|
||
OpenAPI 3 livré (`openapi.yaml`), version URL `/api/v1`, ISO 8601 dates.
|
||
|
||
### B.2 Sécurité API
|
||
JWT Bearer (ou OAuth 2), TLS 1.3, rate-limit 100 req/min/IP, signature HMAC pour webhooks.
|
||
|
||
### B.3 Exemples
|
||
Collection Postman, scripts cURL, guide « Appeler l’API ».
|
||
|
||
### B.4 Intégrations futures
|
||
SSO LDAP/SAML, webhook `contract.validated`, export statistiques CSV.
|
||
|
||
---
|
||
|
||
# C – Déploiement, CI/CD et Observabilité *(nouveau)*
|
||
|
||
### C.1 Déploiement communal (on-premise)
|
||
- **Objectif** : installation complète sur un serveur Linux ou VM en moins d’1 h.
|
||
- **Livrable** : solution de packaging **au choix** (Docker Compose, image VM, paquet .deb/.rpm).
|
||
- **Script update / rollback** : `update.sh` ou équivalent (backup ➜ pull ➜ migrate ➜ vérif ; rollback ≤ 5 min).
|
||
- **Config** : fichier `.env.sample` décrivant toutes les variables.
|
||
|
||
### C.2 Environnements
|
||
- Developpement local (Docker Compose).
|
||
- Recette & Production (serveur communal).
|
||
- Les étudiants doivent décrire la procédure de bascule Recette → Prod.
|
||
|
||
### C.3 Pipeline CI/CD
|
||
- Pipeline automatisé (tests unitaires + build image + scan CVE) déclenché à chaque merge.
|
||
- L’école fournit son propre dépôt Git/runner.
|
||
- Artifacts : images taguées, notes de version (`CHANGELOG.md`).
|
||
|
||
### C.4 Observabilité & logs
|
||
- Journaux applicatifs JSON (timestamp UTC, level, traceId).
|
||
- Rotation/retention : 7 jours sur disque, 30 jours sur archive compressée.
|
||
- Export métriques Prometheus (`/metrics`) : latence API, nombre de sessions, files d’attente hors-ligne.
|
||
- Tableaux Grafana d’exemple inclus (`grafana_dashboard.json`).
|
||
|
||
### C.5 SLA et performances (indicatifs)
|
||
- Disponibilité mensuelle cible : **≥ 98 %**.
|
||
- Temps de réponse P95 des opérations courantes : **< 500 ms**.
|
||
- Capacité test : **≈ 50 sessions simultanées** sans dégradation (> 1 s).
|
||
|
||
---
|
||
|
||
# D – Glossaire
|
||
AES-256, JWT, KMS, OpenAPI, RPO, RTO, rate-limit, HMAC, Compose, CI/CD…
|
||
|
||
---
|
||
|
||
# E – Historique des versions
|
||
|
||
| Version | Date | Auteur | Commentaire |
|
||
|---------|------------|------------------|---------------------------------|
|
||
| 0.1-draft | 2025-04-24 | Équipe projet | Création du SSS unifié |
|
||
| 0.2 | 2025-04-24 | ChatGPT & Julien | Ajout déploiement / CI/CD / logs |
|