16315ab3b5
Fix SSH audit: lire settings DB au lieu de hardcoder user/key/suffixes
...
- SSH key et user lus depuis app_secrets (ssh_key_file, ssh_user)
- Ajout .mpcz.fr dans DNS_SUFFIXES
- Auto-detect Ed25519/RSA/ECDSA
- Fallback password depuis secrets
2026-04-10 20:01:15 +02:00
c2f3d669eb
Mode Demo/Reel au login + base patchcenter_demo
...
- Choix Production/Demo sur la page de login
- Base patchcenter_demo avec schema identique + 10 serveurs mpcz
- Le mode est stocke dans le JWT token
- La session DB bascule automatiquement selon le mode
2026-04-10 19:39:35 +02:00
Khalid MOUTAOUAKIL
e96d79aae3
QuickWin: prereq/snapshot services, referentiel, logs, correspondance
...
- Split quickwin services: prereq, snapshot, log services
- Add referentiel router and template
- QuickWin detail: prereq/snapshot terminal divs for production
- Server edit partial updates
- QuickWin correspondance and logs templates
- Base template updates
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-10 18:13:00 +02:00
Khalid MOUTAOUAKIL
13290c1ebb
Phase 1 securite: permission checks sur tous les routers
...
- auth: verification is_active au login (compte desactive = bloque)
- settings: enforcement backend can_edit(settings) + role/section
- servers: can_view/can_edit(servers) sur toutes les routes
- planning: can_view/can_edit(planning) sur toutes les routes
- specifics: can_view/can_edit(specifics) sur toutes les routes
- contacts: rattache au module servers (can_view/can_edit)
- campaigns: can_view/can_edit(campaigns) sur toutes les routes manquantes
- audit/audit_full: can_view/can_edit(audit) sur toutes les routes
- qualys: can_view/can_edit(qualys) sur toutes les routes
- safe_patching: perm checks + authentification sur SSE stream
- quickwin: can_view/can_edit(campaigns|quickwin) sur toutes les routes
97 points d'injection securises, 0 route sans controle
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-08 16:46:05 +02:00
Khalid MOUTAOUAKIL
5cc10c5b6c
Module QuickWin complet + filtres serveurs OS/owner
...
- QuickWin: campagnes patching rapide avec exclusions générales (OS/reboot) et spécifiques (applicatifs)
- Config serveurs: pagination, filtres (search, env, domain, zone, per_page), dry run, bulk edit
- Détail campagne: pagination hprod/prod séparée, filtres (search, status, domain), section prod masquée si hprod non terminé
- Auth: redirection qw_only vers /quickwin, profil lecture seule quickwin
- Serveurs: filtres OS (Linux/Windows) et Owner (secops/ipop/na), exclusion EOL
- Sidebar: lien QuickWin conditionné sur permission campaigns ou quickwin
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-08 16:27:45 +02:00
Khalid MOUTAOUAKIL
c550597a86
Export CSV serveurs avec filtres (domaine, env, tier, état, recherche)
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-07 01:49:23 +02:00
Khalid MOUTAOUAKIL
769e199735
Export CSV patching avec filtres (année, scope, domaine, recherche)
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-07 01:30:17 +02:00
Khalid MOUTAOUAKIL
7f5e5c83eb
Export CSV: serveurs sans agent + agents inactifs
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-07 01:24:49 +02:00
Khalid MOUTAOUAKIL
5db47c497f
Agents sans Qualys: filtres Alpine.js sur hostname, OS, domaine, env, état
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-07 01:20:59 +02:00
Khalid MOUTAOUAKIL
6a5bdefde5
Sans agent: lister tous les serveurs sans exclusion
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-07 01:13:49 +02:00
Khalid MOUTAOUAKIL
b159960522
Qualys agents: colonne État ajoutée, exclure décommissionnés de la liste sans agent
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-07 01:06:49 +02:00
Khalid MOUTAOUAKIL
c22ad75ee8
État édition: labels avec accents (Éteint, En implémentation, Décommissionné, EOL)
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-07 00:59:54 +02:00
Khalid MOUTAOUAKIL
e551ddf575
Tooltip survol sur env/etat tronqués, dropdown labels lisibles, état eteint ajouté
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-07 00:55:53 +02:00
Khalid MOUTAOUAKIL
c16c628e96
Fix: last_checkin datetime to string avec |string filtre Jinja2
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-07 00:39:30 +02:00
Khalid MOUTAOUAKIL
067dec6bcd
Agents inactifs: KPI cliquable avec *, légende RHEL5/EOL, liste détaillée
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-07 00:33:54 +02:00
Khalid MOUTAOUAKIL
29a377887f
KPI agents Qualys: actifs/inactifs/sans agent sur dashboard + page Agents avec liste détaillée
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-07 00:01:57 +02:00
Khalid MOUTAOUAKIL
ca16e42ef8
Cache 10min sur détail vulnérabilités (HTMX), indication (cache) affichée
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-06 23:52:55 +02:00
Khalid MOUTAOUAKIL
e11714c421
Comparaison même semaine 2026 vs 2025: barres, écart pts, objectif, données incomplètes
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-06 23:47:01 +02:00
Khalid MOUTAOUAKIL
340970c108
Comparaison 2026 vs 2025: barres progression, écart serveurs et points
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-06 23:45:17 +02:00
Khalid MOUTAOUAKIL
8286fe0624
Fix histogramme: cancelled_weeks séparés, barres empilées vert+rouge par semaine
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-06 23:30:30 +02:00
Khalid MOUTAOUAKIL
4517dcdd39
Histogramme patching: barres empilées vert (patché) + rouge (annulé/reporté), total affiché
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-06 23:27:14 +02:00
Khalid MOUTAOUAKIL
c05ec932db
Fix histogramme patching: exclure annulés/reportés du graphe semaines
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-06 23:25:36 +02:00
Khalid MOUTAOUAKIL
a43dd01b7e
Loading spinner sur vulns et détail asset (HTMX), masqué après réponse
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-06 23:13:33 +02:00
Khalid MOUTAOUAKIL
1d8502d25b
Loading overlay sur bouton Rechercher Qualys
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-06 23:09:43 +02:00
Khalid MOUTAOUAKIL
c94d952948
Fix resync: retirer data-loading, ajouter texte explication cache 10min
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-06 23:07:21 +02:00
Khalid MOUTAOUAKIL
c139dfbaa2
Cache mémoire 10min pour Qualys API, bouton Resync temps réel, page Agents (activation keys + versions)
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-06 23:04:48 +02:00
Khalid MOUTAOUAKIL
0dc0fc7643
Vulns: parser results en tableau Package/Version installée/Version requise
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-06 22:51:50 +02:00
Khalid MOUTAOUAKIL
31bf62651c
Qualys vulns: clic sur badges ouvre detail (QID, titre, CVE avec lien NVD, CVSS3, detection, solution)
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-06 22:48:44 +02:00
Khalid MOUTAOUAKIL
662b9c3535
Fix vulns: utiliser IPs au lieu de QPS asset IDs pour API VMDR
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-06 22:42:30 +02:00
Khalid MOUTAOUAKIL
f04d04224d
Qualys: vulnérabilités severity 3/4/5 dans résultats recherche (API VMDR)
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-06 22:38:56 +02:00
Khalid MOUTAOUAKIL
40b0307f62
Accents dans tous les templates: audité, réseau, corrélation, patché, données, décommissionnés
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-06 22:28:33 +02:00
Khalid MOUTAOUAKIL
cb8ade24e4
Patching: filtre SecOps/Hors SecOps, KPIs par perimetre, detail partial "pas encore audite"
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-06 22:11:35 +02:00
Khalid MOUTAOUAKIL
390a162cf4
Fix: inclure status partial (serveurs Ayoub) dans toutes les requetes audit/patching/dashboard
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-06 18:20:33 +02:00
Khalid MOUTAOUAKIL
dc3efd081e
Fix sidebar Complet/Patching actif, domaines cliquables dans patching
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-06 18:18:44 +02:00
Khalid MOUTAOUAKIL
dea2889746
Module Patching: KPIs, graphe semaines, domaine, detail par serveur, tri, filtre, 2025/2026
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-06 18:06:38 +02:00
Khalid MOUTAOUAKIL
24c1db2aca
Fix pagination: conserve sort/dir dans les liens de page
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-06 17:55:11 +02:00
Khalid MOUTAOUAKIL
ed23cc3fb6
Dashboard patching 2026: KPIs, barre progression, graphe semaines, domaine/env/zone
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-06 17:54:00 +02:00
Khalid MOUTAOUAKIL
2b2fac7c13
Dernier patch: date/semaine depuis Excel, colonne triable, couleur vert/jaune/rouge
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-06 17:48:11 +02:00
Khalid MOUTAOUAKIL
2ac263e80a
Tri colonnes hostname, uptime, reboot (asc/desc) avec indicateur fleche
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-06 17:35:38 +02:00
Khalid MOUTAOUAKIL
df03852c86
Export CSV avec filtres (domaine/zone/recherche/KPI), BOM UTF-8
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-06 17:20:35 +02:00
Khalid MOUTAOUAKIL
c42708db75
Processus: restart_hint et cmdline affiches en entier, plus de troncature
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-06 17:13:39 +02:00
Khalid MOUTAOUAKIL
cdd550c84b
KPIs applicatifs: Oracle, PostgreSQL, MariaDB, HANA, httpd, nginx, HAProxy, Tomcat, Java, Node.js, Redis, MongoDB, Elastic, Docker/Podman — cliquables avec filtre
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-06 17:08:25 +02:00
Khalid MOUTAOUAKIL
38b27beb9d
Fix KPIs detail serveur sur une seule ligne (inline flex-nowrap)
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-06 16:49:45 +02:00
Khalid MOUTAOUAKIL
f6571c2b10
Flow map: filtre par domaine/zone, recherche serveur avec autocompletion
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-06 16:48:29 +02:00
Khalid MOUTAOUAKIL
532ecf7e3d
Carte flux visuelle SVG: noeuds, liens verts, pan/zoom, tooltip, recherche
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-06 16:44:20 +02:00
Khalid MOUTAOUAKIL
0a309ea4f7
Filtre domaine + zones (DMZ, EMV, LAN) dans dropdown
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-06 16:38:54 +02:00
Khalid MOUTAOUAKIL
c7831f5b86
KPIs sur une seule ligne (flex-nowrap, min-width:0)
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-06 16:37:00 +02:00
Khalid MOUTAOUAKIL
a20318f010
Pagination 20 lignes par page
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-06 16:34:04 +02:00
Khalid MOUTAOUAKIL
d283e8ab8c
Pagination 50/page, recherche hostname, filtre domaine
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-06 16:32:07 +02:00
Khalid MOUTAOUAKIL
2864a15817
KPIs audit complet: reboot, disque 90%/80%, uptime > 4 mois, filtres cliquables
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-06 16:29:52 +02:00