You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
🐛 [BUG] - La connexion server-nestjs ne renvoie pas les rôles admin dérivés des groupes OIDC #2835
GET /api/v1/auth renvoie adminRoleIds = union dédupliquée (persistés ∪ rôles dont l'oidcGroup est dans les groupes du jeton), sans écriture en base à la connexion — le reconciler Keycloak reste propriétaire de la persistance.
validatePayload expose l'union dédupliquée dans le contexte d'authentification
Les gardes User et Project propagent adminRoleIds sur la requête
GET /api/v1/auth renvoie l'union dans la charge utile (parité logViaSession)
Depuis la bascule de GET /api/v1/auth vers server-nestjs (cef4b7c), la charge utile de session ne contient plus les rôles admin dérivés des groupes OIDC. AuthController.auth renvoie la ligne brute de la base (adminRoleIds persistés seuls), alors que le legacy logViaSession fusionnait persistés ∪ rôles matchés par oidcGroup dans la réponse — sans jamais persister cette union.
Preuve (préviews du 2026-10-08, même identité Keycloak, même session_state) :
pile pr-2782 (auth servie par server-nestjs) : adminRoleIds: []
pile pr-2816 (auth encore servie par le legacy) : adminRoleIds: ["034f589f-…","76229c96-…"]
Impact et environnement
Le client (stores/user.ts) calcule myAdminRoles puis adminPerms depuis adminRoleIds : un administrateur par groupe OIDC (ex. /admin) perd tout le gating d'UI admin.
L'autorisation serveur n'est pas affectée : adminPermissions est recalculé à chaque requête depuis groupes ∪ persistés ∪ globaux.
Activity