Aller au contenu

Vue d'ensemble

Inqase est une plateforme d’assurance cyber pour les PME belges. Quatre profils l’utilisent : le prospect (parcours public d’offre), le client et le courtier (un portail chacun), et l’équipe Inqase (back-office).

flowchart LR
    people["Prospect, client,<br/>courtier, équipe Inqase"]
    inqase["Plateforme Inqase"]
    stripe["Stripe"]
    docusign["DocuSign"]
    cf["Cloudflare"]
    reg["CBE, Pappers"]
    hiscox["Hiscox"]
    people -->|utilisent portails et parcours| inqase
    inqase -->|crée les paiements| stripe
    stripe -->|notifie les paiements| inqase
    inqase -->|envoie les enveloppes| docusign
    docusign -->|notifie la signature| inqase
    inqase -->|envoie les emails| cf
    inqase -->|recherche les entreprises| reg
    inqase -->|exporte le fichier bordereau| hiscox
    classDef status fill:#9ce6ff,stroke:#2c97bb,color:#1c4657
    classDef external fill:#e5e7eb,stroke:#9ca3af,color:#374151
    class inqase status
    class people,stripe,docusign,cf,reg,hiscox external

Vue par composant : seul le backend parle aux utilisateurs métier, à Stripe, à DocuSign et aux registres d’entreprises. Il pilote le scanner (le monitoring), qui ne l’appelle jamais.

flowchart LR
    visitor["Visiteur"]
    users["Client, courtier,<br/>équipe"]
    ai["Assistant IA<br/>externe"]
    landing["Site vitrine"]
    backend["Backend<br/>application métier"]
    pg["Base de données"]
    redis["File d'attente<br/>des tâches"]
    mon["Monitoring<br/>scan de sécurité"]
    visitor -->|navigue| landing
    landing -->|envoie les formulaires| backend
    users -->|utilisent les portails| backend
    ai -->|interroge Inqase| backend
    backend -->|lit et écrit| pg
    backend -->|met des tâches en attente| redis
    backend -->|appelle l'interface avec un jeton| mon
    classDef status fill:#9ce6ff,stroke:#2c97bb,color:#1c4657
    classDef done fill:#b3e65f,stroke:#6f9a24,color:#2c4300
    classDef external fill:#e5e7eb,stroke:#9ca3af,color:#374151
    class landing,backend,mon status
    class pg,redis done
    class visitor,users,ai external

Le point d’entrée par lequel un assistant IA externe interroge Inqase (le serveur MCP) tourne dans le même programme que le backend. Il a sa propre authentification.

Dépôt Rôle Section
Backend Application métier : dossiers, offres, polices, paiements, courtiers, commissions, bordereaux, portails, accès pour les assistants IA Backend
Monitoring Scan passif de la surface exposée sur Internet, constats, score de 0 à 100, alertes, aperçu rapide (flash scan) Monitoring
Site vitrine (landing) Site en français, néerlandais et anglais ; les formulaires envoient leurs données au backend Landing

La correspondance avec les noms de dépôts et les technologies est dans le tableau « Correspondance technique » en bas de page.

Le backend appelle le service de monitoring par son interface, avec un jeton d’accès secret. Le monitoring n’appelle jamais le backend.

Sens Quoi Déclencheur
Backend vers monitoring Créer et mettre à jour clients et domaines Toutes les heures
Backend vers monitoring Lire tableau de bord, alertes, scans À la demande, en cache
Backend vers monitoring Récupérer les alertes à notifier Toutes les 10 minutes
Backend vers monitoring Aperçu rapide (flash scan) et lots de scans courtier Parcours d’offre, import courtier
Shodan vers monitoring Notification automatique de bannière Alerte Shodan
  • Les emails de monitoring sont tous envoyés par le backend : voir Emails.
  • Identifiants partagés : le « client » du monitoring correspond à l’entreprise du backend, repérée par l’identifiant de cette entreprise, que la tâche de synchronisation envoie ; les domaines sont la clé des scans et des aperçus rapides.

Pourquoi : le monitoring ne connaît ni la langue du destinataire ni le courtier, donc il n’envoie rien. Comment la synchronisation est pilotée : Le backend pilote le monitoring.

Service Utilisé par Pour
Stripe backend Paiements, avec notifications automatiques de paiement
DocuSign backend Signature des contrats, avec notification automatique de signature
Hiscox backend (fichier uniquement) Bordereau mensuel en fichier Excel, pas d’interface
Cloudflare tous Envoi d’emails, anti-robot, hébergement du monitoring et du site
CBE, Pappers backend Recherche d’entreprises belges et françaises
OpenAI backend Fournisseur d’IA par défaut (assistant, communication courtier)
Slack, Sentry, Nightwatch backend Alertes internes, remontée d’erreurs, supervision de l’application
Google Analytics 4 landing, backend Audience après consentement, événement d’achat côté serveur
Fournisseurs de scan monitoring uniquement Shodan, AbuseIPDB, IntelX, Hudson Rock, GreyNoise, Google Web Risk, CertSpotter, ProjectDiscovery Chaos, HackerTarget, SecurityTrails, crt.sh, RDAP, ransomware.live, NVD, CISA KEV
  • Un seul propriétaire par fait : cette section ne contient que ce qui traverse les dépôts. Le détail de chaque dépôt vit dans sa propre section.
  • Une panne du monitoring dégrade les pages de monitoring et les emails d’alerte, pas les paiements ni les polices.
  • Le jeton d’accès partagé entre backend et monitoring change des deux côtés en même temps : voir Secrets et clés.
  • Mots et statuts : Glossaire, Cycle de vie d’une offre.
  • backend/app/Services/Monitoring/MonitoringClient.php
  • backend/routes/console.php
  • monitoring/wrangler.toml
  • L’hébergement de production (Hetzner, Ploi) et la juridiction UE de D1 ne sont pas visibles dans les dépôts : la configuration Docker ne sert qu’au développement local et celle du monitoring n’a pas de juridiction.
  • Le canal réel d’envoi du fichier bordereau à Hiscox est hors plateforme.
  • Le réglage de la file d’attente de l’exemple de configuration est la base de données ; la valeur en production est inconnue (Redis est configuré).
Nom courant Identifiant technique
Backend dépôt backend : Laravel 12, PHP 8.4, Inertia 2, Vue 3, PostgreSQL, Redis (Horizon)
Monitoring dépôt monitoring : Cloudflare Workers, Hono, D1, Queues
Site vitrine dépôt landing-page : Astro 5, Cloudflare Pages
Accès pour assistants IA serveur MCP (/mcp), authentification OAuth 2 via Passport
Jeton d’accès du monitoring MONITORING_API_TOKEN, interface /api/v1/...
Synchronisation toutes les heures monitoring:sync, tâche SyncCompanyToMonitoring
Alertes toutes les 10 minutes monitoring:dispatch-notifications
Résumés mensuels monitoring:send-summaries
Aperçu rapide POST /api/v1/flash-scan
Notification Stripe, DocuSign POST /stripe/webhook, POST /api/v1/webhooks/docusign
Identifiant d’entreprise partagé externalId