【发布时间】:2017-12-16 17:59:37
【问题描述】:
我试图成功的设置是有一个创建数据库的节点进程,其他服务器以安全的方式访问这些数据库。
所以我的想法是使用用户从节点创建数据库并通过。然后打开服务器的mongodb端口打开访问并锁定mongo admin用户。如果这个理论是好的:
- 如何使用 mongoose 创建用户,以便只有该用户才能访问数据库?
- 在
/etc/mongodb.conf上我应该只添加bind_ip = 0.0.0.0就可以了吗?
PS:我使用的是 Ubuntu 16:04 和最新的 Mongodb。
编辑:2017 年 8 月 13 日
到目前为止,我取得的成功是将addUser = db.createUser({user: "admin",pwd: "admin",roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]}); 用于管理数据库,在数据库位于--auth 下时与其连接,并尝试通过该连接创建其他数据库,如下所示。
var adminConnection = mongoose.createConnection('mongodb://admin:admin@localhost:27017/admin', {
useMongoClient: true
});
console.log(typeof adminConnection.db.executeDbAdminCommand);//function
【问题讨论】:
-
您可以使用猫鼬创建用户。它只是用于连接和执行 mongodb 的 CURD 操作的驱动程序
-
我已经更新了我的答案,可能已经解决了您的问题,并将帮助您解决其他 mongodb 和 ubuntu 问题
标签: node.js mongodb mongoose server ubuntu-16.04