Amener la plateforme à un niveau de maturité compatible avec :
À l'issue du Sprint 19 :
Ce sprint constitue la couche de gouvernance et de conformité de niveau Enterprise.
RGPD ISO 27001 SOC 2 OWASP ASVS NIS2 (préparation) eIDAS (intégrations signature)
SecurityModule ComplianceModule DataGovernanceModule IdentityModule RiskManagementModule ConsentManagementModule AuditComplianceModule
En tant qu'utilisateur
Je souhaite sécuriser mon compte
Afin de réduire le risque d'usurpation.
TOTP Email OTP SMS OTP Application Authenticator
POST /security/mfa/enable POST /security/mfa/verify
Navigateur Appareil Date Adresse IP
Microsoft Entra ID Okta Google Workspace Keycloak
POST /identity/saml/configuration
OpenID Connect OAuth2 Azure AD Auth0
DELETE /sessions/{id}
IP Pays Navigateur Date connexion
RGPD Cookies Marketing SMS Email
POST /consents
DELETE /consents/{id}
Date Version texte IP Canal
GET /privacy/export
ZIP JSON PDF
POST /privacy/erase
Anonymisation Pseudonymisation Suppression
Tracer tous les traitements de données.
Finalité Base légale Durée conservation Responsable
PUBLIC INTERNAL CONFIDENTIAL RESTRICTED
Clients Paiements Contrats Documents Logs
Logs 1 an ---------------- Contrats 10 ans ---------------- Consentements 5 ans
POST /risk-management/risks
Titre Description Probabilité Impact Mesures
:contentReference[oaicite:0]{index=0}
LOW MEDIUM HIGH CRITICAL
Complexité mot de passe Rotation secrets Durée session MFA obligatoire
GET /security/policies PUT /security/policies
Utilisateur Action Date IP Résultat
Immuable Horodaté Audité
Connexions multiples Pays inhabituels Escalade privilèges Export massif
Détection ↓ Qualification ↓ Traitement ↓ Clôture
model Consent {
id String @id @default(uuid())
userId String
consentType String
granted Boolean
grantedAt DateTime
version String
}
model SecurityPolicy {
id String @id @default(uuid())
code String
configuration Json
}
model Risk {
id String @id @default(uuid())
title String
probability Int
impact Int
score Int
}
model DataClassification {
id String @id @default(uuid())
entityType String
classification String
}
model ComplianceAudit {
id String @id @default(uuid())
auditType String
status String
executedAt DateTime
}
src/modules/security ├── identity │ ├── mfa │ ├── sso │ ├── privacy │ ├── consents │ ├── compliance │ ├── governance │ └── risks
IdentityService MfaService ConsentService PrivacyService RiskManagementService ComplianceService
MfaEnabled
ConsentGranted
RiskCreated
SecurityIncidentDetected
Microsoft Entra ID Okta Auth0 Keycloak
Google Authenticator Microsoft Authenticator Authy
Security Identity Privacy Compliance Governance RiskManagement
Environ :
35 endpoints
/security /security/mfa /security/sessions /security/consents /security/privacy /security/risks /security/compliance
MfaSetupWizard ConsentManager PrivacyCenter RiskMatrix SecurityPolicyEditor ComplianceDashboard
Consentements Risques ouverts Incidents Sessions actives Conformité RGPD Conformité sécurité
MfaService ConsentService PrivacyService RiskManagementService
Connexion ↓ MFA ↓ Accès ↓ Audit
Activation MFA ↓ Connexion ↓ Consentement ↓ Export RGPD ↓ Audit conformité
Le Sprint 19 est terminé lorsque :
À l'issue du Sprint 19 :
La plateforme est désormais compatible avec les exigences des grands groupes et des déploiements internationaux.
Objectif :
Finaliser la plateforme pour une commercialisation internationale à grande échelle.
Modules concernés :
InternationalizationModule MultiCurrencyModule LocalizationModule ScalabilityModule EnterpriseReleaseModule
Fonctionnalités :
À l'issue du Sprint 20, la plateforme atteindra sa Release Enterprise 4.0 prête pour une commercialisation internationale.