29/11/2025
إذا مرة سويت تسجيل دخول، أو عبيت فورم، أو ضغطت زر "إرسال"، هل خطر على بالك كمية الحماية اللي يسويها المبرمج عشان يتأكد إن بياناتك توصل صح؟
وهل فكرت كيف يمنع الهكر من استغلال أي ثغرة صغيرة؟
خلني أقولك الجملة الذهبية في عالم البرمجة:
"لا تثق أبداً في مدخلات المستخدم."
طيب وش يعني الكلام هذا؟
خلّها حبة حبة وبأسلوب بسيط:
---
1) أول خط دفاع: الفورم نفسه
في الـ HTML، يحطون قواعد قبل ما تسمح لك تكتب حرف واحد.
مثال:
يمنعك تكتب أكثر من 30 حرف.
يتأكد الرقم ما يكون أقل من صفر.
يجبرك تكتب الإيميل بصيغة صحيحة.
هذي مجرد لمسات بسيطة، لكنها مهمة.
---
2) ثاني خط دفاع: JavaScript
هنا يبدأ التدقيق الحقيقي:
– كتبت إيميل غلط؟ يوقفك.
– رقم جوال ناقص؟ يمنع الإرسال.
– حقل لازم تعبيه؟ ما يخليك تكمل.
هذي كلها شغلة الـ Frontend… الناس اللي يبرمجون الواجهات اللي تشوفها.
---
3) ثالث مرحلة: Backend – التحقق العميق
هنا يبدأ الشغل الصح.
البيانات لو عدّت من الواجهة، لازم تعدي من السيرفر.
السيرفر يستخدم شيء اسمه:
Validation
يبني مصفوفة شروط، ويمرر البيانات عليها.
مثلاً:
حقل email: لازم فيه @ وبعدها حروف لاتينية بين 3 و6.
رقم الجوال: 10 أرقام ويبدأ بـ 05 أو 09.
إذا طابق الشروط → يكمل.
إذا فيه مشكلة → يرجّعك برسالة خطأ للواجهة.
هذي المرحلة أهم مرحلة، لأنها تمنع الهكر حتى لو التلاعب جا من الخلف مباشرة.
---
4) جودة إضافية: Policy & Gate
هذي مثل الحرّاس الشخصيين.
مثال بسيط:
إذا تفتح صفحة تعديل البروفايل، لازم النظام يتأكد إنك أنت اللي تعدل على بياناتك، مو شخص داخل على ID غيره.
موضوع كبير شوي، لكن بشرحها في مقال خاص لأنها مهمة جداً في حماية الأنظمة.
---
5) حماية مستوى قاعدة البيانات
آخر طبقة حماية.
حتى الحقول داخل قاعدة البيانات لها حدود:
الحقل name نوعه string وطوله الأقصى 30 حرف.
الحقل phone عدد أرقامه محدود.
الحقل age رقم مو نص.
هذه القيود تمنع أي بيانات غريبة أو ضارة من دخول قاعدة البيانات.
---
الخلاصة
كل هذي المراحل يعملها المبرمج في الخلفية… وإنت بضغطة زر ترسل بياناتك ولا تدري وش يصير ورا الستار.
---
توضيح سريع
Frontend: شغل الواجهات اللي تشوفها وتتعامل معها.
Backend: شغل السيرفر، المنطق، التحقق، وقواعد البيانات.
---
سؤال للمشاركين:
وش نسمي المبرمج اللي يشتغل في Frontend و Backend مع بعض؟
اكتب جوابك في التعليقات 👇🔥
---