PDA

View Full Version : سوال: چگونگی محافظت از دیتا بیس از کاربران موزی



محمد ذبیحی نژاد
یک شنبه 09 خرداد 1395, 12:13 عصر
سلام
من تو برنامم دیتا بیسی دارم که اعتبار کاربر برای استفاده از برنامه را در خودش ذخیره میکنه. البته این اعتبار با صد جور روش اصولی و مندرآوردی ذخیره کردم که به سادگی نتونه بره و دستی یک اعتبار برای خودش تعریف کنه و کلا" به ریش من بخنده.
ولی دیدم کاربر می تونه یکبار که اعتبار خریدار و اونو تو دیتابیس ذخیره کرد از دیتا بیس کپی بگیره و بعد از اینکه اعتبارش تمام شد بانک اطلاعات کپی شده که اعتبار کاربر توش فول بوده را جایگزین دیتا بیس با اعتبار تمام شده بکنه و دوباره شروع به استفاده از نرم افزار کنه.
کسی راهکاری برای مقابله با این روش داره

برنامه من با SQL Express ویژوال ساخته شده
دیتا بیس هم در مسیر برنامه است

با تشکر

ایمان اختیاری
سه شنبه 25 خرداد 1395, 04:20 صبح
به نظرم شما اون مقادیر مورد نظر رو اول اینکه توسط متدهای رمزگذاری ایجاد کنید که یکتا باشه . مثلا با تاریخ ترکیب کنید که کاملا یکتا باشه . اما برای اینکه کاربر کپی کرد دیتابیس رو کار نکرد حتما یه کپی از دیتای مورد نظر رو توی رجیستری ذخیره کنید . حتما وقتی اعتبار مصرف شد توی رجیستری هم این مورد ثبت بشه که فلان کد مصرف شد. این طوری اگه کاربر دیتابیس رو کپی کرد کارشو انجام داد دوباره دیتابیس رو ریستور کرد چک کنید که این کد اعتبار مصرف شده یا نه .
البته این مورد رو هم می شه دور زد .اگه کاربر باهوش باشه می تونه برنامه رو مونیتور کنه ببینه کدوم فیلدهای رجیستری اطلاعات ذحیره شد اون رو هم کپی بگیره ولی کار کاربر معمولی نیست .
بهترین راه برای این مورد خارج کردن این مورد از دست کاربره . می تونید از اعتبار سنجی راه دور استفاده کنید . مثلا یا وب سرویس یا سرویس پیامکی یا مواردی مثل این که دیگه ضریب اطمینان می ره بالا