createUser (إنشاء مستخدم)
آخر تحديث: 2026-10-09
createUser (إنشاء مستخدم)
ينشئ createUser مستخدم قاعدة بيانات بأدوار؛ في mongosh استخدم db.createUser({ user, pwd, roles }). يمكن أن تكون الأدوار مدمجة (read, readWrite, dbAdmin, root) أو مخصصة، ونطاقها عبر قواعد البيانات بكائنات { role, db }. ينتمي المستخدم إلى قاعدة البيانات التي يعمل الأمر عليها. تسري المصادقة فقط عند تفعيل التفويض.
| الفئة | مصادقة المستخدم |
|---|---|
| إصدار MongoDB | 1.0+ |
| لغة المثال | mongosh (الطرفية) |
📝 الصيغة
db.createUser({
user: "<username>",
pwd: "<password>",
roles: [ { role: "readWrite", db: "shop" } ]
})
⚙️ المعلمات
| user | اسم المستخدم. |
|---|---|
| pwd | كلمة المرور؛ يمكن لـ passwordDigestor التحكم في التجزئة. |
| roles | قائمة الأدوار ككائنات { role, db } أو نصوص. |
القيمة المرجعة:يُرجع { ok: 1 } عند النجاح
▶ مثال
نفّذ الأوامر التالية في mongosh المحلي لديك (يتطلب تشغيل mongod):
// createUser: إنشاء مستخدم للقراءة فقط
use admin
db.createUser({
user: 'reader',
pwd: 'secret123',
roles: [ { role: 'read', db: 'shop' } ]
})
المخرجات:
{ ok: 1 }
📌 ملاحظات
- ينتمي المستخدم إلى قاعدة البيانات حيث يعمل createUser
- فوض عبر قواعد البيانات بـ { role, db }
- لا تُخزَّن كلمات المرور كنص صريح، لكن استخدم كلمات قوية على أي حال
🏷️ وسوم ذات صلة
💡 حالات ذات صلة
مزيد من الحالات العملية قريبًا.
📚 دروس ذات صلة
❓ الأسئلة الشائعة
Qعلى أي قاعدة بيانات يجب أن يعمل createUser؟
Aعلى قاعدة البيانات التي ينتمي إليها المستخدم (عادةً admin أو قاعدة الأعمال)؛ وسّع أدوارًا عبر قواعد البيانات بـ { role, db }.
Qأُنشئ المستخدمون لكن الاتصالات تتخطى المصادقة؟
Aيتحقق MongoDB من الاعتمادات فقط عند تفعيل التفويض؛ وإلا يمكن لأي شخص الاتصال.
Qما الأدوار المدمجة؟
Aread و readWrite و dbAdmin و dbOwner و userAdmin و root وغيرها.