- الحصول على الرابط
- X
- بريد إلكتروني
- التطبيقات الأخرى
- الحصول على الرابط
- X
- بريد إلكتروني
- التطبيقات الأخرى
لكي نبدأ الكتابة عن Oauth، فينبغي في البداية أن نعرف المشكلة التي يحلها، لذلك في بداية المقال سوف نطرح المشكلة بشكل اساسى.
في
أغلب التطبيقات التي تستخدمها، التطبيق يطلب منك تسجيل حساب جديد قبل
استخدام الخدمات، فأنت تكتب الإيميل والرقم السري، فيما
بعد يمكنك استخدام الإيميل والرقم السري لتسجيل الدخول للتطبيق.
عند
استخدام التطبيق تضيف معلومات خاصة بك مثل تاريخ ميلادك وهكذا، وكذلك تنشئ
معلومات جديدة خاصة بك في هذا التطبيق مثل كتابة مقال أو عمل إعجاب لمقال
أو قيامك بالتعليق على مقال وهكذا، في النهاية كل هذا عبارة عن بيانات
خاصة بك تُحْفَظ في قاعدة بيانات التطبيق.
إذا ألقينا نظرة عامة على
الموضوع بدون تفاصيل فستكون كالآتى، يوجد تطبيق ومستخدم لهذا التطبيق
وقاعدة بيانات يستخدمها التطبيق لحفظ البيانات الخاصة بهذا المستخدم.
ولكي
يعدل المستخدم البيانات الخاصة به أو يستخدم التطبيق بشكل عام،فيجب
عليه أولاً تسجيل الدخول باستخدام الإيميل والرقم السري الخاص به. ﻷن بهذه
الطريقة يؤمن التطبيق المستخدم وبياناته.
لذلك التطبيق مسؤول عن
حماية بيانات المستخدمين وغير مسموح لأحد أن يستخدم أو يعدل بيانات
المستخدم الأ المستخدم أو من معه الصلاحيات الكافية من قبل التطبيق .
تمام !! اتفقنا!!
لنفترض أن هناك تطبيق تقوم باستخدامه اسمه الفا ،
الفا تطبيق رائع وعدد مستخدميه كثير ولكن مظهر التطبيق سيء ويفتقد
العيدي من الميزات الموجودة فى التطبيقات الأخرى.
هناك تطبيق جديد اسمه بيتا حسن مظهر التطبيق بشكل ملموس وأضاف كثير من المميزات وانت قررت تستخدمه .
فى ملحوظه مهمه ، وهى أن تطبيق بيتا لا يخص الشركة التي قامت
بتطوير تطبيق الفا بل هو تطبيق منفصل وخاص بشخص أو شركة اخرى .
تطبيق
بيتا يطلب منك عند استخدامه الإيميل والرقم السري الخاصين بتطبيق ألفا من اجل استخدامهم بشكل تلقائى حتى يقوم بتسجيل
الدخول بدلاً منك فى تطبيق ألفا ، ويكون قادر على قراءة البيانات الخاص بك
وتعديلها ايضاً 😀.
ثانية واحدة!! ايوا انت فهمت صح ، انت بكامل
إرادتك هتشارك الايميل والرقم السرى الخاص بك في تطبيق ألفا مع تطبيق تانى مختلف اسمه بيتا من أجل استخدامهم والوصول
الى بيناتك وقراءتها والتعديل عليها ايضاً .
انت بتقول حالياً : ايه
العبط دا !!! انا بكل تأكيد لن اقوم بعمل هذا وسوف اقوم بأنتظار تيم ألفا
حتى يقوم بتطوير واجهة التطبيق الخاص بهم . ونعم العقل :)
المفاجأة
الغير سارة ان فى تطبيقات كتير كانت تفعل هذا وكذلك مستخدمي هذه
التطبيقات وبكل اراداه حره منهم كانوا يقومون بمشاركة بيانات التسجيل
الخاصة بهم فى تطبيقات مع تطبيقات أخرى .
مثال واقعى :
الفيسبوك
كان يطلب من المستخدمين كتابة الإيميل والرقم السري الخاص بهم فى تطبيق
الجيميل , حتى يقوم الفيسبوك بتسجيل الدخول بشكل تلقائي لحساب المستخدم
ويقوم بإرسال دعوات للأصدقاء الموجودين في حساب الجيميل.
فى
الأمثله السابقه، بيتا و فيسبوك نقدر نقول عليهم أنهم Third party لأنهم
استخدموا معلومات تسجيل الدخول الخاصة بالمستخدم فى تطبيق اخر من اجل
الوصول لبيانات هذا المستخدم والتعديل عليها وقراءتها والتصرف بدل
المستخدم.
بالتأكيد هذه الطريقة لمشاركة البيانات السرية الخاصه بك غير
آمنة على الأطلاق،ماذا لو ال Third Part كان تطبيق غير آمن وقام
بمشاركة بياناتك السرية او بيعها او كان تطبيق يقوم بجمع المعلومات عن
المستخدمين في تطبيقات مختلفة لكى يقوم ببيعها ولنفترض فى أحسن الأحوال ال
Third Party امان وموثوق من حيث الاستخدام ، ماذا يحدث لو تم اختراق هذا
تطبيق.
فى النهاية يوجد مشكلة ، وحل هذه المشكلة سيكون هدفه تنظيم
عملية حصول الـ Third Party على المعلومات الخاصة بالمستخدم ،والمستخدم
يكون عنده الامكانيه يحدد المعلومات التي يمكن ل Third Part أن يقراها
او يعدل عليها ويحدد اﻷوامر التي يمكن أن ينفذها ال Third Party
بالنيابة عنه وكذلك فى اى وقت يتمكن من ان يلغى صلاحيات
ال Third part والنقطة الأهم ان المستخدم لا يشارك بيانات تسجيل الدخول
الخاصة به مع اى Third Party .
فى المقال تم عرض المشكلة وتم
عرض الحل الذي نحتاجه , فاياً كان الطريقة التي سوف يتم استخدامها فى حل
المشكله , ممكن تجد طرق مختلفة وأدوات مختلفة , لذلك يجب علينا فى
البداية أن نفهم المشكلة والحل الذي نريده , لأن فهمك للمشكله سيمكنك ان تختار بين
الأدوات المختلفة التى تقوم بحل هذه المشكلة.
تعليقات
إرسال تعليق