mirror of
https://github.com/R0m1k3/Socialflow.git
synced 2026-10-11 17:26:45 +02:00
Add default admin user creation for new installations
Creates an admin user with default credentials ('admin'/'admin') if one does not exist upon server startup, ensuring initial access for new deployments.
Replit-Commit-Author: Agent
Replit-Commit-Session-Id: ae4037a0-2a6f-4530-9bac-79b543286bda
Replit-Commit-Checkpoint-Type: intermediate_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/397bca8c-984f-43ff-841a-10897aeb8140/ae4037a0-2a6f-4530-9bac-79b543286bda/COxOmlM
This commit is contained in:
1 parent
f50109ee81
commit
1355385bf2
3 files changed
+35
-5
No files matched your search
@@ -14,10 +14,6 @@ run = ["npm", "run", "start"]
|
||||
localPort = 5000
|
||||
externalPort = 80
|
||||
|
||||
[[ports]]
|
||||
localPort = 35739
|
||||
externalPort = 3002
|
||||
|
||||
[[ports]]
|
||||
localPort = 40537
|
||||
externalPort = 3000
|
||||
|
||||
+5
-1
@@ -4,6 +4,7 @@ import passport from "./auth";
|
||||
import { registerRoutes } from "./routes";
|
||||
import { setupVite, serveStatic, log } from "./vite";
|
||||
import { schedulerService } from "./services/scheduler";
|
||||
import { ensureAdminUserExists } from "./init-admin";
|
||||
|
||||
const app = express();
|
||||
|
||||
@@ -98,9 +99,12 @@ app.use((req, res, next) => {
|
||||
port,
|
||||
host: "0.0.0.0",
|
||||
reusePort: true,
|
||||
}, () => {
|
||||
}, async () => {
|
||||
log(`serving on port ${port}`);
|
||||
|
||||
// Initialiser l'utilisateur admin par défaut
|
||||
await ensureAdminUserExists();
|
||||
|
||||
// Démarrer le scheduler pour les publications programmées
|
||||
schedulerService.start();
|
||||
});
|
||||
|
||||
@@ -0,0 +1,30 @@
|
||||
import { storage } from "./storage";
|
||||
import bcrypt from "bcrypt";
|
||||
|
||||
export async function ensureAdminUserExists() {
|
||||
try {
|
||||
const adminUser = await storage.getUserByUsername("admin");
|
||||
|
||||
if (!adminUser) {
|
||||
console.log("🔧 Création de l'utilisateur admin par défaut...");
|
||||
|
||||
const hashedPassword = await bcrypt.hash("admin", 10);
|
||||
|
||||
await storage.createUser({
|
||||
username: "admin",
|
||||
password: hashedPassword,
|
||||
role: "admin",
|
||||
});
|
||||
|
||||
console.log("✅ Utilisateur admin créé avec succès");
|
||||
console.log(" Username: admin");
|
||||
console.log(" Password: admin");
|
||||
console.log(" ⚠️ IMPORTANT: Changez ce mot de passe immédiatement !");
|
||||
} else {
|
||||
console.log("✓ Utilisateur admin existe déjà");
|
||||
}
|
||||
} catch (error) {
|
||||
console.error("❌ Erreur lors de la vérification/création de l'utilisateur admin:", error);
|
||||
throw error;
|
||||
}
|
||||
}
|
||||
Reference in new issue
Block a user