From 6bd3f6bc18efe2780986f222d75373236751ee59 Mon Sep 17 00:00:00 2001 From: dahoud <41957584+DahoudG@users.noreply.github.com> Date: Sun, 12 Apr 2026 15:27:38 +0000 Subject: [PATCH] fix(admin): supprimer @Provider de JwtPropagationFilter MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit @Provider enregistre le filtre GLOBALEMENT sur tous les REST clients. JwtPropagationFilter s'exécutait après AdminServiceTokenHeadersFactory et écrasait le token de service account avec le JWT utilisateur mobile → LUM recevait un token du realm unionflow (kid inconnu) → 401. La propagation JWT est déjà gérée par OidcTokenPropagationHeadersFactory sur UserServiceClient/RoleServiceClient via @RegisterClientHeaders. JwtPropagationFilter est conservé sans @Provider pour référence future. --- .../server/client/JwtPropagationFilter.java | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/src/main/java/dev/lions/unionflow/server/client/JwtPropagationFilter.java b/src/main/java/dev/lions/unionflow/server/client/JwtPropagationFilter.java index a36eae7..aad6e2a 100644 --- a/src/main/java/dev/lions/unionflow/server/client/JwtPropagationFilter.java +++ b/src/main/java/dev/lions/unionflow/server/client/JwtPropagationFilter.java @@ -13,10 +13,16 @@ import org.jboss.logging.Logger; import java.io.IOException; /** - * Filtre REST Client qui propage automatiquement le token JWT - * des requêtes entrantes vers les appels sortants (lions-user-manager). + * Filtre REST Client qui propage le token JWT de la requête entrante. + * + *
NE PAS annoter avec {@code @Provider} — cela l'enregistrerait GLOBALEMENT + * sur tous les REST clients, y compris AdminUserServiceClient/AdminRoleServiceClient + * qui utilisent AdminServiceTokenHeadersFactory (service account). Le filtre global + * écraserait le token de service account avec le JWT utilisateur → 401 sur LUM. + * + *
La propagation JWT est assurée par {@link OidcTokenPropagationHeadersFactory} + * sur les clients qui en ont besoin ({@code @RegisterClientHeaders}). */ -@Provider public class JwtPropagationFilter implements ClientRequestFilter { private static final Logger LOG = Logger.getLogger(JwtPropagationFilter.class);