50 lines
1.8 KiB
JavaScript
50 lines
1.8 KiB
JavaScript
const { User, Role } = require('./models');
|
|
const { sequelize } = require('./config/database-simple');
|
|
const bcrypt = require('bcrypt');
|
|
|
|
async function checkUsers() {
|
|
try {
|
|
console.log('连接数据库...');
|
|
await sequelize.authenticate();
|
|
console.log('数据库连接成功');
|
|
|
|
// 查看所有用户
|
|
console.log('\n=== 查看所有用户 ===');
|
|
const users = await User.findAll({
|
|
attributes: ['id', 'username', 'email', 'password', 'status']
|
|
});
|
|
|
|
console.log('用户数量:', users.length);
|
|
users.forEach(user => {
|
|
console.log(`ID: ${user.id}, 用户名: ${user.username}, 邮箱: ${user.email}, 状态: ${user.status}`);
|
|
console.log(`密码哈希: ${user.password}`);
|
|
});
|
|
|
|
// 测试密码验证
|
|
console.log('\n=== 测试密码验证 ===');
|
|
const testPassword = '123456';
|
|
|
|
// 测试testuser的密码
|
|
const testHash1 = '$2b$10$CT0Uk9ueBFN4jc/5vnKGguDfr4cAyV3NUXKVKG6GrFJVsbcJakXLy'; // testuser的哈希
|
|
const isValid1 = await bcrypt.compare(testPassword, testHash1);
|
|
console.log('testuser密码验证结果:', isValid1);
|
|
|
|
// 测试testuser2的密码
|
|
const testHash2 = '$2b$10$KJAf.o1ItgiTeff9dAJqyeLQ.f2QCRCR2cUlU/DLn6ifXcBLM3FvK'; // testuser2的哈希
|
|
const isValid2 = await bcrypt.compare(testPassword, testHash2);
|
|
console.log('testuser2密码验证结果:', isValid2);
|
|
|
|
// 测试手动生成的哈希
|
|
const manualHash = await bcrypt.hash(testPassword, 10);
|
|
console.log('手动生成的哈希:', manualHash);
|
|
const isValid3 = await bcrypt.compare(testPassword, manualHash);
|
|
console.log('手动哈希验证结果:', isValid3);
|
|
|
|
} catch (error) {
|
|
console.error('检查用户失败:', error);
|
|
} finally {
|
|
await sequelize.close();
|
|
}
|
|
}
|
|
|
|
checkUsers(); |