feat(sprint-17 web 2026-04-25): page publique /pages/public/kpi.xhtml — consultation KPI signée
Page anonyme accessible aux autorités externes via URL signée (HMAC-SHA256 backend). DRY strict — pas de DTO miroir, réutilise KpiPublicSnapshot officiel api 1.0.10. PublicKpiRestClient (@RegisterRestClient sans AuthHeaderFactory — endpoint anonyme) - consulter(token) → KpiPublicSnapshot PublicKpiBean @ViewScoped - charger() lit query param token via FacesContext / viewParam, appelle endpoint - Gestion erreurs HTTP : 401 → "Token invalide ou expiré", 404 → "Organisation introuvable" - Helpers couleurScore (>=80 success / >=60 warning / <60 danger), couleurStatut Page /pages/public/kpi.xhtml - Template public-template.xhtml (sans auth, sans menu) - f:viewParam token + f:viewAction publicKpiBean.charger - Card KPI : score coloré central + 8 indicateurs en grid (Compliance Officer, AG, AIRMS, CMU, KYC, formation LBC/FT, UBO, CAC) - Badge transparency footer : "Toute consultation est tracée dans l'audit trail" - Whitelisté via existing /pages/public/* dans application.properties Bump api 1.0.9 → 1.0.10 Tests (8/8) PublicKpiBean - couleurScore × 4 (success/warning/danger/null) - couleurStatut × 6 cas - isCharge avec/sans snapshot
This commit is contained in:
Reference in New Issue
Block a user