Skip to content

Architecture

CyberOrigen est construit sur une architecture moderne et evolutive concue pour les charges de travail de securite et de conformite en entreprise.

Vue d'Ensemble du Systeme

┌─────────────────────────────────────────────────────────────────────┐
│                      COUCHE DE PRESENTATION                          │
├─────────────────────────────────────────────────────────────────────┤
│                                                                      │
│   ┌───────────────────┐          ┌───────────────────┐              │
│   │   Portail Admin   │          │  Site Marketing   │              │
│   │   (React + Vite)  │          │  (React + Vite)   │              │
│   └─────────┬─────────┘          └─────────┬─────────┘              │
│             │                              │                         │
└─────────────┼──────────────────────────────┼────────────────────────┘
              │                              │
              ▼                              ▼
┌─────────────────────────────────────────────────────────────────────┐
│                           COUCHE API                                 │
├─────────────────────────────────────────────────────────────────────┤
│                                                                      │
│   ┌───────────────────────────────────────────────────────────┐     │
│   │                   Backend FastAPI                          │     │
│   │                                                            │     │
│   │   • Points de terminaison API REST (OpenAPI/Swagger)       │     │
│   │   • Authentification JWT + MFA                             │     │
│   │   • Limitation de debit et validation des requetes         │     │
│   │   • Traitement des taches en arriere-plan                  │     │
│   │                                                            │     │
│   └───────────────────────────────────────────────────────────┘     │
│                                                                      │
└─────────────────────────────────────────────────────────────────────┘


┌─────────────────────────────────────────────────────────────────────┐
│                        COUCHE DE SERVICES                            │
├─────────────────────────────────────────────────────────────────────┤
│                                                                      │
│   ┌─────────────┐  ┌─────────────┐  ┌─────────────┐                 │
│   │ Service IA  │  │  Mappeur    │  │  Service    │                 │
│   │             │  │ Conformite  │  │   Email     │                 │
│   │ • Anthropic │  │             │  │             │                 │
│   │ • OpenAI    │  │ • Mappage   │  │ • SMTP      │                 │
│   │ • Google    │  │   controles │  │ • Modeles   │                 │
│   └─────────────┘  └─────────────┘  └─────────────┘                 │
│                                                                      │
│   ┌─────────────┐  ┌─────────────┐  ┌─────────────┐                 │
│   │  Service    │  │  Service    │  │  Service    │                 │
│   │  Scanner    │  │   Risques   │  │   Preuves   │                 │
│   │             │  │             │  │             │                 │
│   │ • Scan vuln │  │ • Scoring   │  │ • Upload    │                 │
│   │ • Rapports  │  │ • Cartes th.│  │ • Organiser │                 │
│   └─────────────┘  └─────────────┘  └─────────────┘                 │
│                                                                      │
└─────────────────────────────────────────────────────────────────────┘


┌─────────────────────────────────────────────────────────────────────┐
│                        COUCHE DE DONNEES                             │
├─────────────────────────────────────────────────────────────────────┤
│                                                                      │
│   ┌──────────────────────┐     ┌──────────────────────┐             │
│   │     PostgreSQL       │     │        Redis         │             │
│   │                      │     │                      │             │
│   │  • Base principale   │     │  • Stockage sessions │             │
│   │  • ORM SQLAlchemy    │     │  • Limitation debit  │             │
│   │  • Migrations Alembic│     │  • File de taches    │             │
│   │  • Chiffrement AES-256│    │  • Mise en cache     │             │
│   │                      │     │                      │             │
│   └──────────────────────┘     └──────────────────────┘             │
│                                                                      │
└─────────────────────────────────────────────────────────────────────┘

Stack Technologique

Frontend

ComposantTechnologieObjectif
FrameworkReact 18Composants UI
Outil de BuildViteDeveloppement et builds rapides
LangageTypeScriptSecurite des types
Bibliotheque UIshadcn/uiSysteme de composants
StylesTailwind CSSCSS utilitaire
EtatTanStack QueryGestion de l'etat serveur
GraphiquesRechartsVisualisation des donnees

Backend

ComposantTechnologieObjectif
FrameworkFastAPIAPI haute performance
LangagePython 3.12Logique serveur
ORMSQLAlchemyAbstraction base de donnees
MigrationsAlembicVersioning du schema
Authpython-joseGestion JWT
ValidationPydanticValidation des donnees

Infrastructure

ComposantTechnologieObjectif
ConteneurDockerPackaging d'applications
OrchestrationDocker ComposeDeveloppement local
Base de donneesPostgreSQLStockage principal
CacheRedisSessions et cache
CloudEnterprise CloudHebergement production
CDNGlobal CDNCache en bordure

Architecture de Securite

Flux d'Authentification

┌──────────┐     ┌──────────┐     ┌──────────┐     ┌──────────┐
│  Client  │────▶│  Connexion│────▶│   MFA    │────▶│  Token   │
│          │     │ (email/  │     │ (TOTP)   │     │  d'Acces │
│          │     │ mdp)     │     │          │     │  (JWT)   │
└──────────┘     └──────────┘     └──────────┘     └──────────┘

Chiffrement des Donnees

  • Au Repos : AES-256-GCM pour les champs sensibles
  • En Transit : TLS 1.3 pour toutes les connexions
  • Secrets : Service de gestion des secrets

Multi-Tenancy

Les organisations sont isolees au niveau de la base de donnees :

sql
-- Toutes les requetes incluent le contexte de l'organisation
SELECT * FROM controls WHERE organization_id = :org_id

Mappage de Conformite

La plateforme mappe automatiquement les controles entre les referentiels :

┌─────────────┐
│ Bibliotheque│
│  Controles  │
└──────┬──────┘


┌─────────────────────────────────────────────────┐
│              Mappeur de Conformite               │
├─────────────────────────────────────────────────┤
│                                                  │
│  SOC 2    PCI-DSS   ISO 27001   HIPAA   RGPD    │
│    ↓         ↓          ↓         ↓       ↓     │
│  CC1.1    Req 1.1    A.5.1.1   164.312  Art 32  │
│                                                  │
└─────────────────────────────────────────────────┘

Modeles de Deploiement

Developpement

  • Docker Compose pour tous les services
  • Hot reload active
  • Base de donnees locale avec donnees de test

Production

  • Orchestration de conteneurs
  • Base de donnees PostgreSQL geree
  • Cache Redis gere
  • Stockage objet pour les preuves
  • CDN pour les actifs statiques

Agentic AI-Powered Security & Compliance