как я могу поставить свой логин с другим уровнем пользователя, как это, если уровень его 1 пользователь, его superadmin, если его 2, пользователь его администратор, и если его 3 использует его, я использую угловые 7 nodejs и mongodb, это ссылка на мой проект https://github.com/Kammikazy/project
это мой код
файл аутентификации getUserDetails (имя пользователя, пароль) {вернуть this.http.post ('api / login', {имя пользователя, пароль})}
компонент входа
login() {
let username = this.loginForm.value.username;
let password = this.loginForm.value.password;
this.Auth.getUserDetails(username,password).subscribe(data =>{
if(data.success){
this.router.navigate(['homepage'])
this.Auth.setLoggedIn(true)
//sdsadad
}else{
document.getElementById("erro").style.visibility = "visible";
window.setTimeout("location.href='login'",3000);
}
})
}
nodejs
app.post('/api/login', async (req,res)=>{
const {username,password}=req.body
const resp = await User.findOne({ username: username}).select('+password')
if(password==null){
res.json({success:false,
message:" password can not be empty"
})
}else if(username==null){
res.json({success:false,
message:" username can not be empty "
})
}
else if(!resp){
res.json({success:false,
message:"incorrect password"
})
}
else if(!await bcrypt.compare(password, resp.password)){
//if(!resp){
res.json({success:false,
message:"incorrect password"
})
}else {
///sessions
req.session.user=username
req.session.save()
res.json({
success:true
})
}
})