From 84ee9b3bc023168545f0e51f0b122e45a5e4ebd4 Mon Sep 17 00:00:00 2001 From: Alexander Borg Date: Mon, 22 Sep 2025 06:49:28 +0200 Subject: [PATCH] Fix jwt-token --- server/scripts/setup-database.js | 40 +++++++++++++++++++++++++++++--- 1 file changed, 37 insertions(+), 3 deletions(-) diff --git a/server/scripts/setup-database.js b/server/scripts/setup-database.js index 94e7309..2bf2753 100644 --- a/server/scripts/setup-database.js +++ b/server/scripts/setup-database.js @@ -9,6 +9,7 @@ const { DroneDetection, Heartbeat, User, + ManagementUser, AlertRule, AlertLog, Tenant @@ -83,6 +84,36 @@ const setupDatabase = async () => { }); console.log(`āœ… Operator user created: ${operatorUser.username}`); + // Create management users for the management interface + console.log('šŸ‘‘ Creating management admin user...'); + const managementAdmin = await ManagementUser.create({ + username: 'admin', + email: 'admin@management.com', + first_name: 'Management', + last_name: 'Administrator', + password_hash: await bcrypt.hash('admin123', 10), + role: 'super_admin', + is_active: true, + api_access: true, + created_by: 'system' + }); + console.log(`āœ… Management admin created: ${managementAdmin.username}`); + + // Create management tenant admin user + console.log('šŸ‘‘ Creating management tenant admin user...'); + const managementTenantAdmin = await ManagementUser.create({ + username: 'tenant_admin', + email: 'tenant_admin@management.com', + first_name: 'Tenant', + last_name: 'Administrator', + password_hash: await bcrypt.hash('tenant123', 10), + role: 'tenant_admin', + is_active: true, + api_access: true, + created_by: 'system' + }); + console.log(`āœ… Management tenant admin created: ${managementTenantAdmin.username}`); + // Create sample devices console.log('šŸ“” Creating sample devices...'); const devices = await Device.bulkCreate([ @@ -313,15 +344,18 @@ const setupDatabase = async () => { console.log('šŸŽ‰ Database setup completed successfully!\n'); console.log('šŸ“‹ Summary:'); - console.log(` • Users created: 2 (admin, operator)`); + console.log(` • Tenant users created: 2 (admin, operator)`); + console.log(` • Management users created: 2 (admin, tenant_admin)`); console.log(` • Devices created: ${devices.length}`); console.log(` • Heartbeats created: ${heartbeats.length}`); console.log(` • Detections created: ${detections.length}`); console.log(` • Alert rules created: ${alertRules.length}`); console.log(` • Alert logs created: ${alertLogs.length}`); console.log('\nšŸ“ Default login credentials:'); - console.log(' Admin: admin / admin123'); - console.log(' Operator: operator / operator123\n'); + console.log(' Tenant Admin: admin / admin123'); + console.log(' Tenant Operator: operator / operator123'); + console.log(' Management Admin: admin / admin123'); + console.log(' Management Tenant Admin: tenant_admin / tenant123\n'); // Close connection await sequelize.close();