شرح صفوف ومحتوى الفقرة
بينما تتحقق المصادقة من هوية المستخدم عبر بيانات الدخول والجلسة، يحدد تفويض الصلاحيات ما يُسمح لهذا المستخدم المسجل بفعله داخل النظام. حتى بعد تسجيل دخول المستخدم بنجاح، يجب على التطبيق التحقق من ملكيته للسجل أو امتلاكه لدور إداري قبل السماح له بتعديل أو حذف البيانات.
- المصادقة (Authentication 401): تجيب عن سؤال من أنت عبر الحراس والجلسات وفحص كلمة المرور.
- التفويض (Authorization 403): يجيب عن سؤال هل تملك صلاحية تنفيذ هذا الإجراء عبر البوابات والسياسات.
- منع التلاعب بالمعرفات (IDOR Defense): يمنع مستخدماً من تعديل مقال مستخدم آخر بمجرد تغيير رقم المعرف في الرابط.
PHP
// Authentication: Is the visitor logged in?
$user = $request->user();
// Authorization: Does this user own the post?
$isOwner = $user->id === $post->user_id;