FameBlogs

🧠 سؤال للمحترفين: وAuthorization؟

هناك خطأ شائع جدًا في فهم أنظمة الدخول والصلاحيات، وهو التعامل مع Authentication وAuthorization وكأنهما نفس العملية. لكن الفرق بينهما أساسي. 🔐 Authentication تعني التحقق من هوية المستخدم. بمعنى آخر: "هل أنت فعلًا الشخص الذي تدعي أنك هو؟" عندما تدخل إلى حسابك باستخدام كلمة المرور أو رمز ، فإن النظام يحاول إثبات هويتك. مثال: أنت تدخل إلى لوحة التحكم باستخدام: Username + Password + MFA إذا نجح التحقق، أصبح النظام يعرف هويتك. لكن هذا لا يعني أنك تستطيع الوصول إلى كل شيء. وهنا يأتي دور: 🛡️ Authorization وهي تحديد ما الذي يُسمح للمستخدم بالوصول إليه أو تنفيذه بعد التحقق من هويته. بمعنى: "بعد أن عرفنا من أنت، ماذا يُسمح لك أن تفعل؟" مثال: لديك شركة فيها: 👤 Employee 👨‍💼 Manager 👑 Administrator جميعهم يستطيعون تسجيل الدخول. إذن Authentication قد تكون ناجحة للجميع. لكن الصلاحيات مختلفة. الموظف قد يستطيع قراءة بيانات العملاء. المدير قد يستطيع تعديل بعض البيانات. Administrator قد يستطيع إنشاء مستخدمين وتغيير إعدادات النظام. هنا تظهر Authorization. وهناك خطأ أمني خطير يحدث عندما يكون Authentication قويًا ولكن Authorization ضعيفًا. مثلًا: المستخدم يسجل الدخول بشكل صحيح، لكن يستطيع تغيير رقم ID في الرابط من: /user/100 إلى: /user/101 ثم يرى بيانات مستخدم آخر. المشكلة هنا ليست في إثبات الهوية. المستخدم بالفعل قام بتسجيل الدخول. المشكلة في عدم تطبيق Authorization بشكل صحيح. لذلك تذكر القاعدة البسيطة: 🔐 = ماذا يمكنك أن تفعل؟ وهذا الفرق مهم جدًا عند تصميم APIs وWeb Applications وأنظمة الشركات. يمكنك امتلاك MFA قوي جدًا، ولكن إذا كانت الصلاحيات سيئة التصميم، فقد تظل البيانات معرضة للوصول غير المصرح به. الأمن الحقيقي يحتاج إلى التحقق من الهوية والتحكم في الصلاحيات معًا.

هذا المنشور جزء من حديث على FameBlogs

ما الفرق بين Authentication

وردت في 3 منشورات من كاتبين

مجاني على Google Play · لأجهزة Android

اقرأ أيضًا

FameBlogsللحديث بقية في التطبيق حمّل