【发布时间】:2016-05-09 09:25:04
【问题描述】:
我正在考虑设置如下。将有一个管理员可以访问和工作人员可以访问的登录页面。管理员可以使工作人员可以看到某些数据(管理员可以创建工作人员)。现在的主要问题是将其与护照挂钩。我认为用户文档看起来像这样
{username: "user1", password : "pass1", role : "admin",
workers :[
{username : "worker1", password : "workerpass1"},
{username : "worker2", password : "workerpass2"}]
}
Passport 执行如下操作来检查用户名和密码
passport.use(new LocalStrategy(
function(username, password, done) {
User.findOne({ username: username }, function(err, user) {
........................
我想知道如何才能访问工人级别,因为我认为上面的护照代码将查看顶部的用户名字段。
我想我想做这样的事情:如果在登录尝试时如果用户名密码不在顶层,则转到工人数组并测试用户名和密码是否匹配
也许如果User.findOne 没有找到用户做User.worker.findOne() 我该怎么做?
【问题讨论】:
标签: node.js mongodb mongoose mongodb-query passport.js