Authorization فرایند تعیین سطح دسترسی یک کاربر یا سرویس به منابع و عملیات سیستم است. پس از احراز هویت، برنامه بررسی میکند آیا کاربر اجازه مشاهده یک رکورد، ویرایش اطلاعات یا اجرای یک عملیات را دارد یا خیر.
مجوزدهی میتواند بر اساس نقش، مالکیت منبع، سیاست دسترسی یا ترکیبی از آنها انجام شود. کنترل دسترسی باید در سمت سرور اعمال شود و صرفاً مخفی کردن دکمه در رابط کاربری کافی نیست.
مدیریت سفارش ممکن است مجاز به تغییر وضعیت همه سفارشها باشد، اما مشتری فقط باید سفارشهای خودش را ببیند. این تفاوت در سمت Backend با Policy یا Gate بررسی میشود.
نمونه کوتاه
$this->authorize("view", $order);
درک تفاوت این موضوع با روت و کنترلر به انتخاب راهکار مناسبتر کمک میکند.