🗒️Quy trình cài đặt xác thực cho database trong mongodb

Quy trình cài đặt xác thực cho database in mongodb

1. Window

Bắt buộc cài đặt thành công MongoDB server:

Mỏ command promt:

Dùng lệnh mongosh để chạy mongodb shell

Dùng lệnh use <tên database> dùng lệnh sau: db.createUser({user: <tên tài khoản>, pwd:<mật khẩu>, roles:[{role:<quyền>, db:<tên database>]}) VD:

use admin db.createUser({user: "tpes-admin", pwd:"tpes2024", roles:[{role:"dbOwner", db:"qltn-server"}]})

Chú ý: mỗi user có thể có nhiều quyền khác nhau đối với mỗi database khác nhau khác nhau.

Sau khi tạo xong user cho databas, tìm mongod.cfd (tệp nằm trong Program Files\MongoDB\Server\6.0\bin) và mở nó lên với tư cách là Administrator (có thể mở nó bằng IDE ở đây tôi dùng notepad++)

Tìm đến dòng #security: và chuyển nó thành: security: authorization: enabled

Lưu file lại, sau đó ta phải restart lại MongoDB Server để kích hoạt chức năng xác thực của MongoDB Server

Mở Tính năng Services của Window lên và tìm đến MongoDB Server, click chuột phải vào và chọn Restart

Sau khi đã restart thì tính năng xác thực đã được kích hoạt:

Kiểm tra chức năng xác thực dùng lệnh: db.auth(<username>, <password>) VD: db.auth("tpes-admin", "tpes2024")

2. Linux:

Bắt buộc cài đặt thành công MongoDB server

Mở terminal và chạy lệnh mongosh:

Tạo user xác thực dùng các câu lệnh sau: use admin

db.createUser({user:"admin-tpes", pwd:"tpes2024", roles:[{role:"dbOwner", db:"qltn-server"}]})

thông báo { ok: 1 } nghĩa là tạo được user xác thực thành công

Sau khi tạo user xác thực thành công cần truy cập vào file mongod.conf để kích hoạt tính năng xác thực

Chạy câu lệnh sau: sudo nano /etc/mongod.conf

Nội dung bên trong file

Tìm đến dòng #sercurity: và chỉnh sửa nó thành như sau

security: authorization: enabled

Lưu lại file và chạy câu lệnh sau để khởi động lại MongoDB Server:

sudo service mongod restart

Quay lại cửa sổ mongo shell và chạy lệnh sau để kiểm tra xác thực bằng lệnh sau: db.auth(<username>, <password>) VD: db.auth("admin-tpes", "tpes2024")

Last updated