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