ما هو الأمن؟
فالسلامة مقياس نسبي وليست معيارا مطلقا.
لسوء الحظ، فإن معظم مشاريع البرمجيات تدرج الأمان كمطلب بسيط. هل هي آمنة؟ الإجابة على هذا السؤال ذاتية مثل السؤال عما إذا كان هناك شيء ساخن.
يجب أن تكون النفقات العامة لتحقيق الأمن معقولة.
يعد تحقيق مستوى مناسب من الأمان أمرًا بسيطًا وغير مكلف بالنسبة لمعظم التطبيقات. ومع ذلك، إذا كانت المعلومات التي تحتاج إلى الحماية ذات قيمة كبيرة أو كانت متطلبات الأمان صارمة للغاية، فستحتاج إلى دفع المزيد لزيادة مستوى الأمان. وينبغي إدراج هذه التكلفة في ميزانية المشروع.
يجب أن تكون سهولة الاستخدام معقولة لتحقيق الأمان.
إحدى الظواهر الشائعة جدًا هي أنه على الرغم من زيادة أمان تطبيق الويب بشكل كبير، إلا أن سهولة الاستخدام تقل أيضًا بشكل كبير. ستتسبب كلمات المرور وأوقات انتهاء صلاحية الجلسة وعناصر التحكم في الوصول في حدوث عقبات أمام المستخدمين الشرعيين. في بعض الأحيان يكون من الضروري توفير الأمان المناسب لأحد التطبيقات، ولكن هذا ليس الحل الوحيد لجميع التطبيقات. من الحكمة إيلاء المزيد من الاهتمام للمستخدمين الشرعيين عند تطبيق قواعد الأمان.
يجب أن يكون الأمن جزءًا من التصميم.
إذا كنت لا تأخذ الأمان بعين الاعتبار عند تصميم تطبيقك، فمن المقدر لك أن تبحث باستمرار عن ثغرات أمنية جديدة. لا يمكن للبرامج المكتوبة بعناية أن تعوض التصميم السيئ.
الخطوات الأساسية في التطبيق هي في الغالب من أجل المستخدمين الشرعيين.
التصميم الآمن ليس سوى جزء من الحل. أثناء التطوير، عندما يبدأ الترميز، من الضروري مراعاة المستخدمين الشرعيين للتطبيق. بشكل عام، الهدف هو جعل التطبيق يعمل على النحو المنشود، في حين أنه من الضروري تنفيذ وظيفة التطبيق المناسبة، الأمر الذي لا يجعل التطبيق أكثر أمانًا.
تدريب نفسك.
أولئك منكم الذين يقرأون هذا الدليل يشعرون بالقلق بشأن الأمان، وعلى الرغم من أن الأمر يبدو مبتذلاً، إلا أن هذه خطوة حاسمة. هناك العديد من الموارد المتاحة على الويب أو في الكتب، والعديد منها مضمن في مستودع PHP Security Alliance: http://phpsec.org/library/
أولاً، قم بتصفية جميع البيانات الخارجية.
تعد تصفية البيانات حجر الزاوية في أمان تطبيقات الويب بأي لغة وعلى أي نظام أساسي. تتيح لك تهيئة المتغيرات وتصفية جميع البيانات التي تم الحصول عليها من الخارج الحصول على نتيجة مضاعفة بنصف الجهد، وبتكلفة منخفضة، يمنع المدير الثغرات الأمنية الرئيسية المحتملة. القائمة البيضاء أفضل من القائمة السوداء. وهذا يعني أنه ينبغي اعتبار جميع البيانات غير قانونية حتى يتم إثبات شرعيتها (أفضل من اعتبار جميع البيانات قانونية حتى يتم إثبات عدم قانونيتها).