From cfa1af0fd0fd079a2345735c182a81f93c2719ee Mon Sep 17 00:00:00 2001 From: Alexander Borg Date: Sun, 14 Sep 2025 09:45:03 +0200 Subject: [PATCH] Fix jwt-token --- client/src/components/Layout.jsx | 8 ++++++++ server/middleware/auth.js | 13 +++++++++++++ 2 files changed, 21 insertions(+) diff --git a/client/src/components/Layout.jsx b/client/src/components/Layout.jsx index 16ff011..2aae504 100644 --- a/client/src/components/Layout.jsx +++ b/client/src/components/Layout.jsx @@ -36,6 +36,13 @@ const Layout = () => { // Build navigation based on user permissions const navigation = React.useMemo(() => { + console.log('🔍 Layout navigation recalculating:', { + userExists: !!user, + userRole: user?.role, + canAccessSettings: user?.role ? canAccessSettings(user.role) : false, + hasDebugPermission: user?.role ? hasPermission(user.role, 'debug.access') : false + }); + if (!user?.role) { return baseNavigation; // Return base navigation if user not loaded yet } @@ -52,6 +59,7 @@ const Layout = () => { nav.push({ name: 'Debug', href: '/debug', icon: BugAntIcon }); } + console.log('✅ Navigation built:', nav.map(n => n.name)); return nav; }, [user]); diff --git a/server/middleware/auth.js b/server/middleware/auth.js index bfc1d70..2fda368 100644 --- a/server/middleware/auth.js +++ b/server/middleware/auth.js @@ -14,6 +14,16 @@ async function authenticateToken(req, res, next) { try { const decoded = jwt.verify(token, process.env.JWT_SECRET); + + // Log what's in the token for debugging + console.log('🔍 JWT Token decoded:', { + userId: decoded.userId, + username: decoded.username, + role: decoded.role, + tenantId: decoded.tenantId, + provider: decoded.provider + }); + const user = await User.findByPk(decoded.userId, { attributes: ['id', 'username', 'email', 'role', 'is_active', 'tenant_id'] }); @@ -30,6 +40,9 @@ async function authenticateToken(req, res, next) { // Extract tenant info from JWT token if available if (decoded.tenantId) { req.tenantId = decoded.tenantId; + console.log('✅ Tenant context set:', decoded.tenantId); + } else { + console.log('⚠️ No tenantId in JWT token'); } next();