Fix jwt-token

This commit is contained in:
2025-09-15 07:13:09 +02:00
parent 8ada5d8b2a
commit 8f04f21360
2 changed files with 17 additions and 4 deletions

View File

@@ -180,8 +180,11 @@ class IPRestrictionMiddleware {
console.log('🔍 IP Restriction Check - Path:', req.path, 'Method:', req.method); console.log('🔍 IP Restriction Check - Path:', req.path, 'Method:', req.method);
// Determine tenant // Determine tenant (check req.tenant first for test contexts)
const tenantId = await this.multiAuth.determineTenant(req); let tenantId = req.tenant;
if (!tenantId) {
tenantId = await this.multiAuth.determineTenant(req);
}
console.log('🔍 IP Restriction - Determined tenant:', tenantId); console.log('🔍 IP Restriction - Determined tenant:', tenantId);
if (!tenantId) { if (!tenantId) {

View File

@@ -58,6 +58,7 @@ const ROLES = {
'user_admin': [ 'user_admin': [
'tenant.view', 'tenant.view',
'users.view', 'users.create', 'users.edit', 'users.delete', 'users.manage_roles', 'users.view', 'users.create', 'users.edit', 'users.delete', 'users.manage_roles',
'roles.read',
'dashboard.view', 'dashboard.view',
'devices.view', 'devices.view',
'detections.view', 'detections.view',
@@ -81,6 +82,8 @@ const ROLES = {
'branding_admin': [ 'branding_admin': [
'tenant.view', 'tenant.view',
'branding.view', 'branding.edit', 'branding.create', 'branding.view', 'branding.edit', 'branding.create',
'ui_customization.create',
'logo.upload',
'dashboard.view', 'dashboard.view',
'devices.view', 'devices.view',
'detections.view', 'detections.view',
@@ -91,7 +94,7 @@ const ROLES = {
'operator': [ 'operator': [
'tenant.view', 'tenant.view',
'dashboard.view', 'dashboard.view',
'devices.view', 'devices.manage', 'devices.view', 'devices.manage', 'devices.update',
'detections.view', 'detections.create', 'detections.view', 'detections.create',
'alerts.view', 'alerts.manage' 'alerts.view', 'alerts.manage'
], ],
@@ -169,7 +172,14 @@ const checkPermission = (userRole, resource, action) => {
*/ */
const requirePermission = (resource, action) => { const requirePermission = (resource, action) => {
return (req, res, next) => { return (req, res, next) => {
if (!req.user || !req.user.role) { if (!req.user) {
return res.status(401).json({
success: false,
message: 'User not authenticated'
});
}
if (!req.user.role) {
return res.status(403).json({ return res.status(403).json({
success: false, success: false,
message: 'Insufficient permissions' message: 'Insufficient permissions'