ايمن ميلاد نشر 30 أغسطس 2024 أرسل تقرير نشر 30 أغسطس 2024 السلام عليكم ورحمة الله وبركاته في حالة لدي اثنين مستخدمين للنظام مدير النظام وطالب في لوحة تحكم اريد مدير يظهر له كل شي طالب بعض خيارات هل افضل عملها عن طريق auth او Middleware وكيف يمكن عمل دلك 2 اقتباس
0 Mustafa Suleiman نشر 30 أغسطس 2024 أرسل تقرير نشر 30 أغسطس 2024 الأمر يتم من خلال مزيج من Authentication و Authorization. أي الـ Authentication تتأكد من هوية المستخدم الذي يحاول الوصول إلى النظام (هل هو مدير النظام أو طالب)، والـ Authorization تحدد هل المستخدم المخول له الوصول إلى مورد أو إجراء معين (مثل عرض لوحة التحكم، تعديل البيانات، إلخ). ويوجد مكتبات لتسهيل الأمر وتنفيذ المنطق الذي تريده، ستجد تفصيل هنا: اقتباس
0 عبد الوهاب بومعراف نشر 30 أغسطس 2024 أرسل تقرير نشر 30 أغسطس 2024 لتحقيق هذا النوع من التحكم في الوصول عادة نقوم باستخدام كلا من نظام التوثيق (Auth) وMiddleware يمكن استخدام نظام التوثيق لتحديد من هو المستخدم (مدير أو طالب) وعادة ما يتم ذلك عند تسجيل الدخول بعد ذلك يمكنك تخزين نوع المستخدم في الجلسة أو في التوكن. كما يمكن استخدام Middleware للتحقق من نوع المستخدم قبل الوصول إلى أجزاء معينة من التطبيق فيقوم ال Middleware بفحص إذا كان المستخدم يمتلك الصلاحيات اللازمة للوصول إلى صفحة معينة أو تنفيذ إجراء معين. سأسترسل في الطريقة عبر مثال توضيحي، أولا تقوم بإنشاء Middleware للتحقق من نوع المستخدم: php artisan make:middleware CheckRole ثم داخله نضع التالي، وفي الأخير نعيد المستخدم الذي لا يمتلك أي صلاحيات إلى الصفحة الرئيسية: public function handle($request, Closure $next, $role) { if (auth()->check() && auth()->user()->role == $role) { return $next($request); } return redirect('/home'); } الخطوة التالية هي التسجيل في Kernel من خلال تسجيل Middleware في app/Http/Kernel.php هكذا: protected $routeMiddleware = [ 'role' => \App\Http\Middleware\CheckRole::class, ]; وهذا نموذج لاسخداماته في الRoutes: Route::group(['middleware' => ['role:admin']], function () { // المسارات الخاصة بالمدير }); Route::group(['middleware' => ['role:student']], function () { // المسارات الخاصة بالطالب }); اقتباس
السؤال
ايمن ميلاد
السلام عليكم ورحمة الله وبركاته
في حالة لدي اثنين مستخدمين للنظام مدير النظام وطالب في لوحة تحكم اريد مدير يظهر له كل شي طالب بعض خيارات هل افضل عملها عن طريق auth او Middleware وكيف يمكن عمل دلك
2 أجوبة على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.