انتقل إلى محتوى الدرس

Authentication vs Authorization الفرق بين المصادقة والتفويض

أتقن أساسيات المصادقة في بروتوكول HTTP: الفرق بين المصادقة (401) والتفويض (403)، وآلية التحدي والاستجابة عبر WWW-Authenticate وAuthorization، والمصادقة الأساسية وحقيقة ترميز Base64، والرموز الحاملة (Bearer Tokens / JWT)، وقواعد تأمين بيانات الاعتماد.
3 صفوف تعليمية
تكنولوجيا الويب
15 مشاهدة

شرح صفوف ومحتوى الفقرة

الصف 1 شرح توضيحي

تقسم معظم تطبيقات الويب والواجهات البرمجية مواردها إلى صفحات عامة متاحة للجميع، وموارد محمية تشترط إثبات هوية الطالب قبل السماح بالوصول إليها. ويوفر بروتوكول إطار عمل قياسياً متكاملاً للمصادقة ( الموثق في المواصفة ) يقوم على آلية التحدي والاستجابة عبر رمز الحالة وحقل الرأس وحقل الرأس .

قبل الغوص في التفاصيل الهندسية، استعرض جدول المصطلحات التقنية الأساسية لهذا الدرس:

المصطلح بالعربية المصطلح بالإنجليزية النطق التقني المعنى الهندسي المبسط
المصادقة (إثبات الهوية) أوثنتيكيشن التحقق من هوية المستخدم أو التطبيق للإجابة عن سؤال: مَن أنت؟ (ويقابله عند الفشل الرمز 401).
التفويض (منح الصلاحية) أوثورايزيشن التحقق مما إذا كان المستخدم المصادق عليه يملك صلاحية تنفيذ الإجراء المطلوب (ويقابله عند المنع الرمز 403).
تحدي المصادقة دبليو دبليو دبليو أوثنتيكيت حقل في رأس استجابة 401 يحدد نوع المصادقة المطلوبة (مثل Basic أو Bearer) والنطاق المحمي (realm).
حقل إرسال الاعتماد أوثورايزيشن هيدر حقل في رأس الطلب يرسله العميل حاملاً نوع المصادقة وبيانات الاعتماد (مثل Basic أو Bearer token).
ترميز Base64 بيس 64 إنكودينج تحويل البيانات الثنائية والنصية إلى 64 حرفاً قياسياً لأغراض النقل الآمن عبر البروتوكول، وهو ترميز علني قابل للعكس وليس تشفيراً.
الرمز الحامل بيرر توكن رمز أمني يمنح حامله حق الوصول للموارد المحمية عبر الحقل Authorization: Bearer
الصف 2 شرح توضيحي

قبل الغوص في حقول رأس المصادقة، يجب التمييز بدقة هندسية بين مفهومين أساسيين يتكرر الخلط بينهما في عالم البرمجة والأمن (لا سيما بسبب التسمية التاريخية لرمز الحالة في مواصفة البروتوكول):

  • 1. المصادقة ( — الإجابة عن سؤال: «مَن أنت؟»): هي عملية التحقق من الهوية عبر بيانات اعتماد كاسم المستخدم وكلمة المرور أو رمز الوصول. وعندما يرسل العميل طلباً بدون إثبات هوية صالح، يرد الخادم برمز الحالة (والذي يعني تقنياً في بروتوكول : غير مصادق عليه) مرفقاً بحقل الرأس .
  • 2. التفويض ( — الإجابة عن سؤال: «ماذا يُسمح لك أن تفعل؟»): هي عملية فحص صلاحيات المستخدم بعد التحقق من هويته (كمنع حساب طالب عادي من فتح لوحة تحكم المشرف العام). وعندما يعرف الخادم هويتك بنجاح لكن صلاحياتك لا تسمح بالوصول، يرد برمز الحالة .
الصف 3 كود برمجي
Shell
# 1. Missing or invalid identity -> 401 Unauthorized (AuthN failure)
HTTP/1.1 401 Unauthorized
WWW-Authenticate: Bearer realm="CloseTag API"

# 2. Valid identity, but insufficient role permissions -> 403 Forbidden (AuthZ failure)
HTTP/1.1 403 Forbidden
Content-Type: application/problem+json