为了账号安全,请及时绑定邮箱和手机立即绑定

Express, Passportjs, 如何实现只允许用户在一处登陆?

Express, Passportjs, 如何实现只允许用户在一处登陆?

翻阅古今 2019-03-22 16:15:24
Express, Passportjs, 如何实现只允许用户在一处登陆?// passport文档中序列化反序列化的代码// passport会创建一个session表存储用户的session// 我通过mongoose操作mongodb// session表是由passport创建的,我并没有session表的模型// 我该如何优雅的做到,只允许用户在一处登陆passport.serializeUser((user, done) => {  const sessionUser = { _id: user._id, username: user.username }  done(null, sessionUser)})passport.deserializeUser((id, done) => {  User.findById(id, (err, user) => {    done(null, user)  })})我目前的思路是,在登陆的时候判断,用户的id,如果用户的id在session中存在,先在session表中删除session的记录,然后调用passport的done。实现只允许用户在一处登陆但是由于没有session的模型,我如何才能更优雅的处理?
查看完整描述

2 回答

?
茅侃侃

TA贡献1842条经验 获得超21个赞

查看完整回答
反对 回复 2019-04-02
?
杨__羊羊

TA贡献1943条经验 获得超7个赞

只在一处应该怎么理解?是锁定ip还是锁定浏览器coockie?
据我所知,oauth2.0已经有这种的特性了

查看完整回答
反对 回复 2019-04-02
  • 2 回答
  • 0 关注
  • 449 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信