带有authentication的mongoose造成超时
所以我们有一个有趣的问题。 我们希望在MongoDB层添加authentication,以提高安全性。 但我们没有得到有利的结果。
预安装
- 以root身份使用mongo shell(针对admin表)
- 切换到所需的数据库(applicationdb)
- 执行db.createUser()
-
validation用户已成功创build
{“_id”:“applicationdb.appuser”,“user”:“appuser”,“db”:“applicationdb”,“roles”:[{“role”:“readWrite”,“db”:“applicationdb”}] }
情况1:
- 更改mongodb.conf,auth = true
- 重新启动Mongod服务
-
连接mongoose使用:
mongoose.connect( '的mongodb:// APPUSER:password@xx.xxx.xxx.xxx:27017 / applicationdb');
-
没有收到错误的连接,所以尝试通过Mongoose执行一个GET导致操作超时没有任何错误(至less我可以find)
情景2:
- 更改mongodb.conf,auth = false
- 重新启动Mongod服务
-
连接mongoose使用:
mongoose.connect( '的mongodb://xx.xxx.xxx.xxx:27017 / applicationdb');
-
没有收到连接错误,所以尝试通过Mongoose执行一个GET,它会成功返回文档
为什么我们在MongoDB中使用身份validation时得到这个超时并且从来没有完成请求?
任何帮助将是伟大的,我们在这一个损失!
您需要使用--auth
选项重新启动mongo服务,请参阅此处
如果不起作用,请执行以下操作:尝试使用keepAlive
设置在mongoose中设置服务器选项。 看到这里和这里 。
- 客户端的JavaScript代码replace
- 在NodeJS的TCP服务器上实现简单的身份validation
- Passport.js相当于Python?
- req.session.passport和req.user空白,req.isAuthenticated在初次成功login后使用passport-facebook返回false
- 是否有一个node.js框架提供像spring-security一样的授权和authentication?
- 将Node.JS代码片段转换为Javascript(Google Apps脚本)
- 在hapi.jsauthenticationscheme和策略之间有什么区别?
- 使用Socket.io,Angular,JWTvalidation数据直到用户validation刷新后才可用
- 使用JSON Web令牌和node.js / express保护URL的正确方法