PDA

View Full Version : چک کردن کاربر از طریق session و جلوگیری از دسترسی کاربر با یک Id از دو سیستم متفاوت



hasti.lm
پنج شنبه 08 دی 1390, 13:02 عصر
من در برنامم جهت Authonticate کاربر از session استفاده کردم و می خوام زمانی که کاربر لاگین کرده از سیستم دیگری امکان لاگین با این id رو نداشته باشه. ممنون میشم اگه راهنماییم کنید

programer-ir
پنج شنبه 08 دی 1390, 15:41 عصر
کار های زیادی می تونی انجام بدی من یک راه رو یک بار انجام دادم جواب گرفتم نمی دونم بهترین یا نه

یک جدول درست کن که فقط یک صفت داره اونم ای دی هر کسی لاگین می کنه تو این جدول درجش کن هر فقت هم لاگ اوت کرد حذفش کن هر فقت هم که کاربر خواست لاگین بشه جک کن تو این جدول هست یا نه اگه نبود بزار لاگین بشه در غیر این صورت که پیام می دی بهش که شما از کامپیوتر دیکه یا مورورگر دیگه ای لاگین شده اید

adineh67
پنج شنبه 08 دی 1390, 17:27 عصر
البته باید اینم در نظر بگیرین که اگه کاربرتون log out نکنه واسه همیشه اون فیلد در حالت فعال می مونه و دیگه نمی تونه وارد سیستم شه پس به این مورد هم توجه کنید!!!

programer-ir
پنج شنبه 08 دی 1390, 17:50 عصر
می تونی تاریخ انقضا برای داده ها بزاری

rahmatr
جمعه 09 دی 1390, 01:47 صبح
می خوام زمانی که کاربر لاگین کرده از سیستم دیگری امکان لاگین با این id رو نداشته باشه
مگر این کار چه اشکالی دارد؟

hasti.lm
سه شنبه 13 دی 1390, 11:09 صبح
مشکلش اینه که کاربر میگه امنیت پایینه. یعنی اگه فرضا 20 دقیقه گذشت اون سطر از جدول حذف بشه. تاریخ انقضا رو چطوری میشه چک کرد؟

alonemm
سه شنبه 13 دی 1390, 16:10 عصر
باسلام:
میتونید تاریخ انقضا سشن رو از فایل WebConfig بخونید و درون جدول ذخیره کنید و چک کنید اگر کاربر به این مدت عملیاتی در سایت انجام نداد رکورد رو حذف کنید و اگر عملیاتی ثبت شده این زمان بر این اساس بروز رسانی بشه.
راه دیگش میتونه استفاده از یک متغییر استا در فایل Global باشه.(بحث شده جستجو کنید).

موفق باشد.

rahmatr
سه شنبه 13 دی 1390, 17:19 عصر
مشکلش اینه که کاربر میگه امنیت پایینه

مگر نه اینکه لاگین کردن از سیستم دیگر احتیاج به پسورد دارد، پس چرا باید این کار نشانه پایین بودن امنیت باشد.
حتی یاهو هم اینجوری نیست.

hasti.lm
یک شنبه 25 دی 1390, 12:30 عصر
باسلام:
میتونید تاریخ انقضا سشن رو از فایل WebConfig بخونید و درون جدول ذخیره کنید و چک کنید اگر کاربر به این مدت عملیاتی در سایت انجام نداد رکورد رو حذف کنید و اگر عملیاتی ثبت شده این زمان بر این اساس بروز رسانی بشه.

موفق باشد.

چطوری میشه فهمید که کاربر در حال حاضر در سیستم عملیاتی انجام میده یا نه؟

m110_110
یک شنبه 25 دی 1390, 13:35 عصر
با سلام
حالا چرا مي خواي جلوي لاگين دوم رو بگيري شايد همون كاربر رفت پشت سيستم ديگر
اين رو كه گفتم دقيقا براي خودم پيش اومده در نتيجه ما تقريبا با همين روش كه قبلا بچه هاي ديگه گفتند پياده كرديم با اين تفاوت كه اگر كسي دوباره لاگين كند لاگين قبلي كه مثلا از سيستم ديگه اي بوده رو مي پرانيم و حالا باز فقط كاربر از يك سيستم در يك لحظه با يك كد كاربري استفاده مي كند
و اگر بخواي مثلا هنگامي كه كاربري لاگين كرد و دوباره از يك سيستم ديگه لاگين كرد رو جلوش بگيري و بگي از يك سيستم ديگه شما لاگين هستيد اين مشكل هم مي تونه پيش بياد كه مثلا اون سيستم قطع شد (و هزارانتا احتمال ديگه) و حالا مي خواد از يك سيستم ديگه بدون اينكه از سيستم قبلي log out كنه وارد سيستم بشه اون وقت هست كه سيستم جواب گو نخواهد بود
پس بهتره با هر لاگين اگر كسي با همان يوزر وارد سيستم شده را بپراني و بگذاري اين كاربر درخواست كننده وارد سيستم بشه