Authentication فرایند بررسی هویت کاربر یا سرویس است، یعنی سیستم مشخص میکند درخواست از طرف چه کسی ارسال شده است. ورود با نام کاربری و گذرواژه، کلید API یا توکن نمونههایی از سازوکارهای احراز هویتاند.
احراز هویت با Authorization تفاوت دارد: Authentication هویت را مشخص میکند، اما Authorization تعیین میکند آن هویت چه مجوزهایی دارد.
این مفهوم در یک پروژه واقعی
کاربر ممکن است با رمز عبور، Token یا WebAuthn احراز هویت شود. بعد از تشخیص هویت، همچنان باید بررسی شود اجازه دیدن سفارش موردنظر را دارد یا خیر.
نمونه کوتاه
if (! auth()->check()) {
abort(401);
}
در همین واژهنامه، روت و کنترلر از مفاهیم مرتبط هستند.
احراز هویت در برابر مجوزدهی
وارد شدن کاربر با ایمیل و رمز، هویت او را مشخص میکند. اما برای مشاهده سفارش شماره ۴۲ باید بررسی شود صاحب آن سفارش هم هست یا مجوز مدیریتی دارد. ورود موفق به معنی مجوز دسترسی به همه منابع نیست.