mirror of
https://github.com/R0m1k3/Regisflow.git
synced 2026-10-11 17:29:48 +02:00
Adds a debug script and markdown guide to troubleshoot admin user access problems. Replit-Commit-Author: Agent Replit-Commit-Session-Id: 4b008663-bd72-492b-b0b6-fa252367e730 Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/0715008c-7244-40f4-befc-26c014852236/4b008663-bd72-492b-b0b6-fa252367e730/gfGF2TH
77 lines
3.0 KiB
JavaScript
77 lines
3.0 KiB
JavaScript
#!/usr/bin/env node
|
|
|
|
/**
|
|
* Script de diagnostic pour problème administration production
|
|
* Teste les routes d'administration et permissions
|
|
*/
|
|
|
|
const https = require('https');
|
|
const http = require('http');
|
|
|
|
// Configuration production - remplacez par votre domaine
|
|
const PROD_URL = 'your-production-domain.com';
|
|
const PROD_PORT = 5000;
|
|
|
|
// Test des routes d'administration
|
|
async function testAdminRoutes() {
|
|
console.log('🔍 DIAGNOSTIC ADMINISTRATION PRODUCTION');
|
|
console.log('=====================================');
|
|
|
|
// 1. Test de connexion auth
|
|
console.log('\n1. Test connexion administrateur...');
|
|
try {
|
|
const loginData = {
|
|
username: 'gael', // ou l'utilisateur admin en production
|
|
password: 'your_password' // Remplacez par le bon mot de passe
|
|
};
|
|
|
|
console.log('POST /api/auth/login');
|
|
console.log('- Username:', loginData.username);
|
|
console.log('- Vérifiez le mot de passe manuellement');
|
|
|
|
} catch (error) {
|
|
console.error('❌ Erreur login:', error.message);
|
|
}
|
|
|
|
// 2. Test route /api/admin/users
|
|
console.log('\n2. Test route admin users...');
|
|
console.log('GET /api/admin/users');
|
|
console.log('- Route nécessite role: administrator');
|
|
console.log('- Utilisateur gael doit avoir store_id = NULL');
|
|
|
|
// 3. Test route /api/auth/me
|
|
console.log('\n3. Test informations utilisateur...');
|
|
console.log('GET /api/auth/me');
|
|
console.log('- Doit retourner role: administrator');
|
|
console.log('- Doit retourner storeId: null');
|
|
|
|
console.log('\n📋 COMMANDES DE DIAGNOSTIC PRODUCTION:');
|
|
console.log('=====================================');
|
|
|
|
console.log('\n# 1. Vérifier l\'état de l\'utilisateur admin:');
|
|
console.log('docker exec regisflow-regisflow-1 psql -U regisflow -d regisflow -c "SELECT id, username, role, store_id FROM users WHERE username = \'gael\';"');
|
|
|
|
console.log('\n# 2. Tester la route d\'administration:');
|
|
console.log('curl -X POST http://votre-domaine:5000/api/auth/login \\');
|
|
console.log(' -H "Content-Type: application/json" \\');
|
|
console.log(' -d \'{"username":"gael","password":"votre_mot_de_passe"}\' \\');
|
|
console.log(' -c /tmp/admin_test.txt');
|
|
|
|
console.log('\ncurl http://votre-domaine:5000/api/admin/users \\');
|
|
console.log(' -b /tmp/admin_test.txt');
|
|
|
|
console.log('\n# 3. Vérifier les logs de l\'application:');
|
|
console.log('docker logs regisflow-regisflow-1 --tail 50');
|
|
|
|
console.log('\n# 4. Si problème de permissions, corriger:');
|
|
console.log('docker exec regisflow-regisflow-1 psql -U regisflow -d regisflow -c "UPDATE users SET role = \'administrator\', store_id = NULL WHERE username = \'gael\';"');
|
|
console.log('docker restart regisflow-regisflow-1');
|
|
|
|
console.log('\n✅ RÉSULTATS ATTENDUS:');
|
|
console.log('- /api/admin/users retourne un tableau JSON des utilisateurs');
|
|
console.log('- Interface d\'administration affiche la liste');
|
|
console.log('- Pas d\'erreur "Insufficient permissions"');
|
|
}
|
|
|
|
// Exécuter le diagnostic
|
|
testAdminRoutes().catch(console.error); |