ورود

View Full Version : سوال: چگونه میتوان از صحت اطلاعات منتقل شده بین jquery و web method مطمئن شد ؟



mehrdad201
دوشنبه 06 دی 1389, 11:36 صبح
سلام به همه دوستان
چند وقتیه سوالی در ذهنم مطرح هست که با عقل ناقص خودم راه حلی براش پیدا نکردم.

همونطور که میدونیم استفاده از اجاکس و وب متدها خیلی داره فراگیر میشه. نمونش در همین فروم هنگامیکه میخوایم پاسخ سریع بدیم یا پستی رو ویرایش کنیم از این فناوری استفاده میشه.

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

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

فرضا اخرین پست یک تاپیک رو در نظر بگیرید. این پست یک شماره ID داره و توسط کاربر A پست شده.
حالا کاربر A دکمه ادیت رو میزنه. تایع جاوا اسکریپت ما شماره ID رو همراه با محتویات جدید به تابع سمت سرور میفرسته تا عملیات ویرایش انجام بشه. حالا این وسط کاربر A میاد با استفاده از فایرباگ یا نرم افزارهای دیگه محتویات شماره ID رو عوض میکنه تا پست دیگه ای ویرایش بشه. (امیدوارم منظورم رو تونسته باشم درست بیان کنم.)

حالا به نظر اساتید و دوستان اصلا این کار امکان پذیره ؟ و اگه این شکل تقلب امکانپذیره ، بهترین راه ها برای جلوگیری از این مشکلات چیه ؟!

سپاس و تشکر

Vahid_moghaddam
دوشنبه 06 دی 1389, 12:48 عصر
درخواست، درخواسته. بر فرض اگه شما از authentication استفاده کرده باشید، در webmethod هم می تونید چک کنید که درخواست معتبر هست یا نه. یا اینکه فرستنده درخواست کیه.

mehrdad201
دوشنبه 06 دی 1389, 12:52 عصر
ممنون اما اگه سایت به صورتی باشه که authentication نداشته باشه. مثلا قسمت کامنت ها در یک وبلاگ و ارسال کامنت سریع

تو این حالت راه حل شما چیه ؟

Vahid_moghaddam
دوشنبه 06 دی 1389, 13:06 عصر
ممنون اما اگه سایت به صورتی باشه که authentication نداشته باشه. مثلا قسمت کامنت ها در یک وبلاگ و ارسال کامنت سریع

تو این حالت راه حل شما چیه ؟

لینک زیر رو ببینید:
http://stackoverflow.com/questions/38421/security-advice-for-jquery-ajax-data-post

mehrdad201
دوشنبه 06 دی 1389, 15:49 عصر
ممنون اقا وحید

این سناریوی unique tokens که به نظر میرسه توی همین سایت هم (قسمت پاسخ سریع) ااستفاده میشه رو چطوری میتونیم پیاده سازی کنیم؟؟ راستش تا اونجا که متوجه شدم تو سمت سرور کد یونیک رو در سشن نگه میداریم. اما سمت کلاینت باید چیکار کنیم ؟؟؟

mehrdad201
سه شنبه 07 دی 1389, 15:15 عصر
دوستان نظری ندارند دیگه ؟!!؟!