مسار مصادقة المستخدم — من إنشاء الحساب إلى جلسة مُتحقَّق منها
مسار مصادقة المستخدم على لوحة تفاعلية: إنشاء الحساب، وتجزئة بيانات الاعتماد وتخزينها، وتسجيل الدخول، وإنشاء الجلسة، والتحقّق من الطلبات المحمية.
مسار مصادقة المستخدم هو الطريق من إنشاء أحدهم حساباً إلى الوثوق بكل طلب لاحق: تُجزَّأ بيانات الاعتماد قبل تخزينها، ويُتحقّق منها عند تسجيل الدخول، ثم ينوب رمز الجلسة عن كلمة المرور.
مسار مصادقة المستخدم — من إنشاء الحساب إلى جلسة مُتحقَّق منها
لوحة FlowJam التفاعلية لهذا الشرح — كل مسار وصف وسهم أعلاه جزء من مخطط QueryChart حقيقي يمكنك فتحه وتعديله.
كيف تقرأ هذا الشرح المرئي
- اقرأ الأعمدة الثلاثة من اليسار إلى اليمين: إنشاء الحساب، ثم تسجيل الدخول، ثم الجلسة.
- المسارات الأربعة هي الأطراف الفاعلة، وكلمة المرور لا تغادر الثلاثة العليا أبداً — فلا يصل إلى مسار قاعدة البيانات إلا التجزئات.
- وقرار «هل تطابق التجزئة النسخة المخزّنة؟» يقسم تسجيل الدخول إلى مسار الجلسة وإلى نقطة الرفض «رُفض تسجيل الدخول».
إنشاء الحساب
«ينشئ المستخدم حساباً» و«يرسل تطبيق العميل البريد الإلكتروني وكلمة المرور» يغذّيان «تجزّئ خدمة المصادقة كلمة المرور» — وهي اللحظة التي تكفّ فيها كلمة المرور عن كونها قابلة للاسترجاع. وخطوة «تُخزَّن بيانات الاعتماد المجزّأة في قاعدة البيانات» هي نهاية إنشاء الحساب: فقاعدة البيانات صارت تحمل تجزئة مملّحة، ويشرح تعليقها أن الخدمة لا تستطيع استرجاع النص الصريح، وهذا هو الغرض من التجزئة.
تسجيل الدخول
«يسجّل المستخدم الدخول ببيانات اعتماده» و«يمرّرها تطبيق العميل إلى خدمة المصادقة» يكرّران النصف الأول من الرحلة، وقرار «هل تطابق التجزئة النسخة المخزّنة؟» هو التحقّق: فكلمة المرور الواردة تُجزَّأ بالطريقة نفسها ثم تُقارَن. وينتهي فرع «لا» عند «رُفض تسجيل الدخول»؛ أما فرع «نعم» فيمضي إلى إنشاء الجلسة.
الجلسة
خطوة «تنشئ خدمة المصادقة جلسة» تُصدر الرمز الذي يحلّ محلّ كلمة المرور، وخطوة «يخزّن تطبيق العميل رمز الجلسة» تنقله إلى تطبيق العميل، وخطوة «الطلبات المحمية تحمل الرمز؛ والخادم يتحقّق منه» هي الحالة المستقرة للنظام — فكل طلب محمي يثبت نفسه بالرمز. وخطوة «مُنح الوصول لمدة الجلسة» تُغلق المسار: فالمستخدم مُصادَق عليه طوال عمر الجلسة لا لطلب واحد.
العلاقات الرئيسية والخلاصات
- تُجزَّأ كلمات المرور قبل تخزينها — فقاعدة البيانات تحمل تجزئة مملّحة أحادية الاتجاه، لا النص الصريح أبداً.
- تسجيل الدخول يقارن التجزئات، فحتى خدمة المصادقة نفسها لا تستطيع استرجاع كلمة المرور المخزّنة.
- رمز الجلسة يحلّ محلّ كلمة المرور في الطلبات اللاحقة، وهذا ما يجعل المصادقة عملية على نطاق واسع.
- التخزين والتحقّق مسؤوليتان منفصلتان في مسارين مختلفين، فيمكن حماية كل منهما على حدة.
- شكل المسار واحد سواء أكان الرمز جلسة على الخادم أم JWT — وانظر الشرح المرئي الخاص بـJWT لتفاصيل آلية الرمز.
متى تستخدم هذا الشرح المرئي
- تعليم فريق جديد الشكل الآمن للمصادقة قبل أن يصمّم أول تسجيل دخول له.
- مراجعة مسار مصادقة بحثاً عن العيوب الكلاسيكية — تخزين النص الصريح، ومقارنة النص الصريح، والوثوق بتطبيق العميل.
- تأسيس نقاش حول المصادقة متعددة العوامل وأين تندرج في المسار.
كيف تعمل
أعد تسمية الأطراف الفاعلة لتطابق نظامك
استبدل تطبيق العميل وخدمة المصادقة بمكوّناتك الحقيقية — تطبيق الويب لديك، ومزوّد الهوية — وأضف ما يغفله المخطط العام.
أضف المصادقة متعددة العوامل
أدرج خطوة MFA عند تسجيل الدخول، بين فحص التجزئة وإنشاء الجلسة، مع تفرّع للتحقّق من العامل الثاني.
أظهر مسار إعادة تعيين كلمة المرور
أضف تفرّع إعادة التعيين من قرار تسجيل الدخول — نسيت كلمة المرور، ورمز إعادة التعيين، وتعيين كلمة مرور جديدة — وينتهي كل منها بحالة صريحة.
علّق على دورة حياة الرمز
على مربع الجلسة، دوّن قواعد انتهاء صلاحية رمزك وإلغائه وتحديثه، وأشر إلى الشرح المرئي الخاص بـJWT إن كنت تُصدر رموز JWT.
الأسئلة الشائعة
ما الطريقة الآمنة لتخزين كلمات المرور؟
لا تخزّن كلمة المرور نفسها أبداً. خزّن تجزئة مملّحة — دالة أحادية الاتجاه تُطبَّق على كلمة المرور مضافاً إليها ملح عشوائي — وتخلّص من النص الصريح. وعند تسجيل الدخول، جزّئ كلمة المرور الواردة بالطريقة نفسها وقارن التجزئتين. فإن تسرّبت قاعدة البيانات حصل المهاجم على تجزئات لا يستطيع عكسها، وهذه بالضبط هي الخاصية التي وُجدت مربعات التجزئة في الشرح المرئي لبيانها.
ما الفرق بين التجزئة والتشفير؟
التشفير قابل للعكس — فبالمفتاح تستطيع استرجاع القيمة الأصلية. أما التجزئة فأحادية الاتجاه — لا مفتاح ولا طريق للعودة. ولكلمات المرور تريد التجزئة، لأنك لن تحتاج النص الصريح مرة أخرى أبداً، إنما تحتاج القدرة على التحقّق فقط. ولهذا السبب يقول الشرح المرئي «تجزّئ» لا «تشفّر»؛ فتشفير كلمات المرور خلط شائع وخطير.
كيف يحلّ رمز الجلسة محلّ كلمة المرور؟
بعد نجاح تسجيل الدخول تنشئ خدمة المصادقة جلسة وتسلّم تطبيق العميل رمزاً — قيمة عشوائية، أو JWT موقّعاً — ينوب عن المستخدم المُصادَق عليه. والطلبات المحمية تحمل الرمز، ويتحقّق الخادم منه بدل طلب كلمة المرور مرة أخرى. وهذا ما يجعل المصادقة عملية مع الطلبات المتكررة، وهو سبب كون انتهاء صلاحية الرمز هو الحد الأمني الحقيقي.
أين تندرج المصادقة متعددة العوامل في هذا المسار؟
المصادقة متعددة العوامل فحص إضافي عند تسجيل الدخول، بعد التحقّق من كلمة المرور وقبل إنشاء الجلسة: يقدّم المستخدم عاملاً ثانياً — رمزاً لمرة واحدة، أو تطبيق مصادقة، أو مفتاحاً عتادياً. وعمود تسجيل الدخول في الشرح المرئي هو موضع إدراج تلك الخطوة. ولا تغيّر المصادقة متعددة العوامل آلية التجزئة ولا آلية الجلسة؛ إنما ترفع سقف القرار الواحد، «هل تطابق التجزئة النسخة المخزّنة؟»، بإضافة إثبات ثانٍ.
عدّل هذا الشرح المرئي في QueryChart (FlowJam)
افتح لوحة المصادقة هذه نفسها كمخطط خاص بك، وأعد تسمية الأطراف الفاعلة لتطابق نظامك، وأضف ضوابطك الحقيقية.