From 6f31275c12d4e869934ff97236483409eb069b05 Mon Sep 17 00:00:00 2001 From: bruno Date: Wed, 28 Oct 2026 12:13:15 -0400 Subject: [PATCH] Fusion #69 : Alertes unifiees (backend/main.py) --- backend/main.py | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/backend/main.py b/backend/main.py index bb8f117..44e0c16 100644 --- a/backend/main.py +++ b/backend/main.py @@ -189,15 +189,25 @@ class SecurityHeadersMiddleware(BaseHTTPMiddleware): # #223 : l'origine du service d'agents n'est pas figée — elle # est dérivée de la configuration (DRACO_AGENT_URL, sinon # l'origine d'AGENT_EVENEMENTS_URL, sinon le défaut officiel). - from backend.draco_config import agent_origine + from backend.draco_config import agent_origine, origine, urls_publiques agent = agent_origine() + # Fusion #69 : le panneau Alertes unifiées lit les API + # notifications des applications soeurs depuis cet hôte ; + # leurs origines rejoignent connect-src (même résolution + # draco_config que les liens de la barre : explicite > + # dérivation depuis l'hôte de l'agent > défaut officiel). + _soeurs69 = " ".join(sorted({ + origine(v) + for k, v in urls_publiques().items() + if k in ("obsigate", "flowdeck", "tiktak", "kanbante") + } - {""})) response.headers["Content-Security-Policy"] = ( "default-src 'self'; " f"script-src 'self' 'nonce-{nonce}' blob: https://cdnjs.cloudflare.com https://unpkg.com https://esm.sh https://cdn.jsdelivr.net https://static.cloudflareinsights.com; " "style-src 'self' 'unsafe-inline' https://cdnjs.cloudflare.com https://fonts.googleapis.com https://cdn.jsdelivr.net https://esm.sh; " "img-src 'self' data: blob:; " - f"connect-src 'self' blob: https://esm.sh https://unpkg.com https://cdnjs.cloudflare.com https://fonts.googleapis.com https://fonts.gstatic.com https://cdn.jsdelivr.net {agent}; " + f"connect-src 'self' blob: https://esm.sh https://unpkg.com https://cdnjs.cloudflare.com https://fonts.googleapis.com https://fonts.gstatic.com https://cdn.jsdelivr.net {agent} {_soeurs69}; " "font-src 'self' data: https://fonts.gstatic.com https://esm.sh; " "worker-src 'self' blob:; " f"frame-src 'self' blob: {agent}; "