ورود

View Full Version : سوال: غیر فعال کردن ورود به سایت بعد از 3 بار وارد کردن رمز اشتباه



mahan206
شنبه 19 اردیبهشت 1394, 18:29 عصر
سلام دوستان میخوام وقتی کاربر سه بار رمز عبور رو اشتباه زد دیگه تا نیم ساعت نتونه وارد بشه یا کلا دیگه نتونه میشه یه نمونه سورس بهم بدین یا نشونم بدین چطوره؟ممنون میشم کمک کنید

rafiee.mostafa64
یک شنبه 20 اردیبهشت 1394, 08:26 صبح
یه راه حل ساده استفاده از کوکی هستش :لبخندساده:
اگه استفاده از کوکی رو بلد نیستی بگو تا یه نمونه واست بنویسم
البته این کار کاملا خالی از اشکال نیست و میشه دورش زد:متفکر:
نمونه استفاده از کوکی هم توی اینترنت زیاده
موفق باشی

Hamid2547
یک شنبه 20 اردیبهشت 1394, 13:50 عصر
سلام دوستان میخوام وقتی کاربر سه بار رمز عبور رو اشتباه زد دیگه تا نیم ساعت نتونه وارد بشه یا کلا دیگه نتونه میشه یه نمونه سورس بهم بدین یا نشونم بدین چطوره؟ممنون میشم کمک کنید
اگر از ممبرشیپ استفاده کنید به عبارتی پروژتون قدیمی هست توی وب کانفیگ این دو خاصیت رو تغییر بدید:


maxInvalidPasswordAttempts="3"
passwordAttemptWindow="30"

اگر از آیدنتیتی استفاده میکنید یک کلاس هست به نام IdentityConfig.cs توش بگردید همین دو خاصیت رو پیدا میکنید:


manager.DefaultAccountLockoutTimeSpan = TimeSpan.FromMinutes(30);
manager.MaxFailedAccessAttemptsBeforeLockout = 3;

mahan206
یک شنبه 20 اردیبهشت 1394, 15:19 عصر
هیچکدوم من از سشن استفاده کردم برای ورود به سایت یه کدی نیاز دارم که مثلا سه بار اشتباه زد دکمه غیر فعال بشه

Davidd
یک شنبه 20 اردیبهشت 1394, 15:31 عصر
در دیتابیس برای هر کاربر یه فیلد اضافه کن که نشون بده چند بار اشتباه زده. هر بار کاربر پسوردشو اشتباه زد مقدارشو یکی زیاد کن و اگه درست زد مقدارش صفر بشه و این مقدار اگر به 3 رسید کاربر غیر فعال کن (یه فیلد برای نشون دادن وضعیت کاربر باید اضافه بشه). در ضمن اندازه پنجره زمانی هم مهمه. مثلا منظورت 3 بار اشتباه پشت سر همه یا 3 بار اشتباه در یک روز هم حساب میشه؟ بنابراین یه پنجره زمانی باید در نظر بگیری که مشخص کنه در چه بازه زمانی نباید بیشتر از 3 بار اشتباه بزنه. برای اینکار هم باید یه فیلد اضافه کنی که زمان اولین اشتباه نشون بده و اگه تعداد اشتباه به 3 رشید در صورتی غیرفعال بشه که از زمان اولین اشتباه یه بازه زمانی مشخصی گذشته باشه.

My_LoVe_IRAN
دوشنبه 21 اردیبهشت 1394, 10:23 صبح
تقریبا هیچ راهی وجود نداره که بتونی بدون نیاز به دیتابیس اینکار رو بکنی ،استفاده از کوکی یا سشن یا ای پی ومک ادرس و ... همشونو میشه دور زد ،قبلا در این مورد خیلی بحث شده بود !راه دوستمون اقای davidd برای افرادی که از قبل ثبت نام کردن با استفاده از دیتابیس صحیح هست ،و مشکلتون رو حل میکنه ،اما برای کسایی که ثبت نام نکرده اند ،(به طور معمول برای نفوذ کسی ثبت نام نمیکنه و ... میخاد که یجوری وارد بشه) اونوقت باید یه جدول درست کنین و ادرس ip و مک سیستمشو یه جوری گیر بیاری ،و تو دیتابیس ذخیره کنی و نزاری وارد بشه (بقیه دیگه معلومه) گرفتن ip راحته اما مک سیستم کاره سختیه و سرعتتون رو میاره پایین به شدت ! در کل به قول یکی از دوستان نباید سخت گرفت و بیخیال شد بهتره ;)

mahan206
دوشنبه 21 اردیبهشت 1394, 16:03 عصر
ممنون دوستان کلا میخواستم ببینم راهش چیه و یه کار امنیتی دیگه رو سایتم انجام داده باشم.
اگه کسی راه حل بهتری به نظرش رسید ممنون میشم بگه.بازم تشکر