← العودة للفهرس

الأدوار والصلاحيات

إدارة الأدوار (Roles) وما يُسمح لكل دور الوصول إليه في اللوحة: شاشات، صفحات، وصلاحيات مخصصة.

المجموعة: Users & Roles اسم القائمة: Roles الرابط: /admin/shield/roles manage roles

الغرض ومنطق العمل

الدور = مجموعة صلاحيات. المستخدم يرثها عند تعيين Role في Users. super-admin يملك كل الصلاحيات تلقائياً.

لا تنشئ دوراً جديداً إلا إذا احتجت مجموعة صلاحيات مختلفة فعلاً — غالباً تكفي الأدوار المزروعة.

الارتباطات

الموردالعلاقةالأثر
Users Role ← User كل مستخدم يمكن أن يحمل دوراً أو أكثر.
كل شاشات اللوحة Permissions view/manage حسب الشاشة — مثل manage products، manage orders.

الأدوار المزروعة وصلاحياتها

الدورصلاحيات رئيسية
super-admin كل الصلاحيات — بما فيها manage roles و manage users.
content-manager منتجات، تصنيفات، مواصفات، أسعار (عرض)، CMS، إعدادات، دول، FAQ، بانرات…
sales تسعير، شرائح، user segments، طلبيات، موردون، سيريالات، أسواق، transfers.
maintenance عرض منتجات، كفالات، manage warranties، app customers، warranty durations.
warranty-admin مثل maintenance — تركيز على الكفالات وعملاء التطبيق.

صلاحيات مخصصة مهمة (أمثلة)

الصلاحيةتفتح
manage usersشاشة Users
manage rolesشاشة Roles (هذه)
manage productsProducts، Images، Prices على المنتج…
manage ordersOrders
manage serialsSerials، Serial Track، Unassigned، Unknown
manage pricingProduct Prices، Import/Export
manage warrantiesWarranties
manage app-customersApp Customers

عند تعديل دور: تبويبات الشاشات / الصفحات / الودجات — فعّل أو ألغِ الصلاحيات حسب الحاجة.

خطوات العمل

  1. Roles → اختر دوراً موجوداً أو + New.
  2. فعّل الصلاحيات المطلوبة (شاشات اللوحة + صلاحيات مخصصة).
  3. Save.
  4. في Users عيّن الدور للموظف.
  5. اختبر الدخول بحساب ذلك الموظف.

أخطاء شائعة

المشكلةالسببالحل
لا أرى شاشة Rolesلا manage rolessuper-admin فقط أو من يملك الصلاحية.
عدّلت الدور ولم يتغير شيءcache صلاحياتأعد تسجيل الدخول. Spatie يخزّن مؤقتاً.
موظف يرى أكثر من المطلوبأدوار متعددةراجع كل الأدوار المعيّنة — الصلاحيات تُجمع.