امنیت در نرم افزارهای تحت وب - شماره یک

توسط: محسن درم بخت | منتشر شده در 1394/06/27 | بازدید : 9409 بار | زمان مطالعه : 12 دقیقه

امنیت مقوله ای بسیار مهم در طراحی نرم افزار است، به خصوص نرم افزارهایی که به دلیل ماهیت یا بستری که در آن قرار می گیرند در دسترس همگانی می باشند و افراد مختلف می توانند به آن دسترسی داشته باشند.

نرم افزارهای تحت وب به دلیل در دسترس بودن(مخصوصا نرم افزارهایی که در اینترنت در دسترس می باشند) می توانند نظر افراد مختلف را برای تست نفوذ به خود بیشتر جذب نمایند.برای همین می خواهیم با  10 روش مختلف نفوذ که در Owasp هم آمده است در ادامه آشنا شویم و روش های مقابله با آنها را بررسی نماییم.همچنین نحوه استفاده از Https در وب سایت ها و روش های مختلف رمزگذاری داده را با یکدیگر مقایسه نماییم.

در شماره اول می خواهیم با بحث اولیه امنیت نرم افزار آشنا شویم و دو مقوله Authentication و  Authorization را معرفی نماییم.در ابتدا Authentication یا احراز هویت که بنده آن را با "من کی هستم؟"  و یک مثال ساده معرفی می نمایم.برای مثال فردی زنگ منزل را فشار می دهد.صاحب خانه گوشی آیفون را برداشته و می گوید "سلام...بله"  و فرد نیز در جواب خود را معرفی می کند.اگر صاحبخانه فرد را بشناسد درب را برای وب باز می کند وگرنه به فرد اجازه ورود نمی دهد.Authentication نیز دقیقا همین عمل است.کاربر در صفحه ورود به برنامه نام کاربری و رمز عبور خود را وارد می نماید.اگر فرد احراز هویت شود وارد سیستم می شود وگرنه پیغام مناسب به کاربر نمایش داده می شود.

در Authorization یا "اجازه ها(دسترسی ها)" که دسترسی های مجاز کاربر را مشخص می کند تعیین می شود که کاربر در سیستم چه نقش یا نقش هایی دارد و به اجازه انجام چه کارهایی را دارد.به مثال خود برگردیم که فرد پس از اینکه از طرف صاحب خانه شناخته شد و وارد ساختمان شد حالا با توجه به نسبتی که با صاب خانه دارد به قسمت های مختلف دسترسی خواهد داشت.ما در بحث Authorization با نقش ها و دسترسی های کاربر مواجه هستیم.

در نوشته بعدی نکات و مسائلی که باید در بحث Authentication  و Authorization رعایت نماییم را بررسی خواهیم کرد.

دوره‌های آنلاین برنامه‌نویسی لیست دوره‌ها