Thiết lập tôi đang cố gắng để thành công là có một quy trình nút tạo cơ sở dữ liệu và các máy chủ khác truy cập cơ sở dữ liệu đó một cách an toàn.
Vì vậy, ý tưởng của tôi là tạo cơ sở dữ liệu từ nút với người dùng và vượt qua. Sau đó, mở cổng máy chủ mongodb để mở truy cập và khóa người dùng quản trị mongo. Nếu lý thuyết đó là tốt:
Thiết lập máy chủ bảo mật Mongodb với Mongoose
- Làm thế nào để người dùng có mongoose để cơ sở dữ liệu chỉ có thể truy cập với người dùng đó?
- Trên
/etc/mongodb.conf
tôi chỉ nên thêmbind_ip = 0.0.0.0
và đó là tất cả?
PS: tôi đang sử dụng Ubuntu 16:04 và mới nhất là Mongodb.
Edit: 13/08/17
gì tôi có thành công đến nay là để addUser
= db.createUser({user: "admin",pwd: "admin",roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]});
cho cơ sở dữ liệu quản trị, kết nối với nó trong khi cơ sở dữ liệu đang được --auth
và cố gắng để tạo ra cơ sở dữ liệu khác thông qua kết nối đó, như dưới đây.
var adminConnection = mongoose.createConnection('mongodb://admin:[email protected]:27017/admin', {
useMongoClient: true
});
console.log(typeof adminConnection.db.executeDbAdminCommand);//function
Bạn có thể tạo người dùng bằng cách sử dụng mongoose. nó chỉ là một trình điều khiển sử dụng cho kết nối và thực hiện các hoạt động CURD của mongodb –
Tôi đã cập nhật câu trả lời của tôi có thể nó đã giải quyết vấn đề của bạn và sẽ giúp u với mongodb và ubuntu vấn đề cho mongodb –