feat: mise en place du projet et création de la page de login

This commit is contained in:
Julien Martin
2025-05-02 21:30:31 +02:00
parent d5015b9c42
commit d3663a28ad
91 changed files with 9494 additions and 191 deletions
+108
View File
@@ -0,0 +1,108 @@
# 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 dActivité (PRA)
- Spécifications des API & intégrations
- Directives de déploiement, dobservabilité, de CI/CD
## 2. Portée
Instances de production, pré-production et recette (Frontend, Backend, PostgreSQL, stockage objets), scripts dinstallation, 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 dActivité
### 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 daudit 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 lAPI ».
### 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 d1 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 dattente hors-ligne.
- Tableaux Grafana dexemple 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 |