การสร้าง User ใน MongoDB ด้วย createUser()
เมธอด db.createUser() ใช้สำหรับสร้างผู้ใช้ใหม่พร้อมกำหนดสิทธิ์ (Roles) และรหัสผ่าน
รูปแบบคำสั่ง (Syntax)
db.createUser({
user: "yourUserName",
pwd: "yourPassword",
roles: [
{ role: "read", db: "yourDatabaseName" }
]
});
ตัวอย่าง: สร้างผู้ใช้ David ในฐานข้อมูล test
> db.createUser(
... {
... user: "David",
... pwd: "David123456",
... roles: [ { role: "read", db: "test" } ]
... }
... );
ผลลัพธ์
Successfully added user: {
"user" : "David",
"roles" : [
{
"role" : "read",
"db" : "test"
}
]
}
Roles ที่นิยมใช้
| Role | คำอธิบาย |
|---|---|
read | อ่านข้อมูลได้อย่างเดียว |
readWrite | อ่านและเขียนข้อมูลได้ |
dbAdmin | จัดการฐานข้อมูล (สร้างดัชนี, สถิติ, เป็นต้น) |
userAdmin | จัดการผู้ใช้และสิทธิ์ในฐานข้อมูลนั้น |
dbOwner | สิทธิ์เต็มรูปแบบในฐานข้อมูล (รวม readWrite, dbAdmin, userAdmin) |
หมายเหตุ
- ต้องรันคำสั่งในฐานข้อมูลที่ต้องการสร้างผู้ใช้ (หรือใช้
use <dbname>ก่อน) - รหัสผ่านควรแข็งแกร่งและเก็บไว้อย่างปลอดภัย
- ใน Production ควรใช้การยืนยันตัวตนแบบ SCRAM-SHA-256 และเปิดใช้ TLS/SSL