PDA

View Full Version : نحوه چک کردن User name و password



karim.h
چهارشنبه 23 فروردین 1385, 01:54 صبح
سلام دوستان
چطوری میتوانم یک User name وpassword را که از کاربر گرفتم با بانک خودم در یک صفحه asp مقایسه کنم
لطفا موضوع را شرح دهید:بوس: :بوس: :قلب:

صابر
چهارشنبه 23 فروردین 1385, 03:57 صبح
سلام،
اگه از VS 2005 استفاده می‌کنی که مشکلی نیست، چند تا کنترل کپسوله شده برای لوگین توی toolbox هست. اما اگه نه، روال کار به این صورته:
۱- کلمه کاربری و کلمه عبور رو از کاربر می‌گیری.
۲- با استفاده از یک دستور SQL تعداد ردیف‌هایی رو که کلمه کاربری و کلمه عبور اونها مساوی با اطلاعات وارد شده توسط کاربر بود، برمی‌گردونی.
۳- اگر عدد برگشت داده شده از مرحله دو، یک بود یعنی یک رکورد در دیتابیس وجود دارد که کلمه کاربری و کلمه عبور آن با اطلاعات وارد شده توسط کاربر یکسان است پس کاربر مجاز است ولی اگر صفر بود کاربر مجاز نیست.

nazaninam
چهارشنبه 23 فروردین 1385, 12:00 عصر
اینجا کامل توضیح داده شده:

http://iranasp.net/Articles/ShowArticle.aspx?articleid=137

بابک زواری
چهارشنبه 23 فروردین 1385, 13:53 عصر
مراقب SQL Injection هم باش

nazaninam
چهارشنبه 23 فروردین 1385, 18:29 عصر
دقیقا جناب زواری اون نوع خوراک inject کردن sql هست برای همین مطالعه این بد نیست

http://www.idevcenter.com/articles/view.aspx?id=19

در ضمن در همین انجمن تاپیک مربوط به sql injection رو مطالعه کنید بد نیست

SalarSoft
چهارشنبه 23 فروردین 1385, 18:45 عصر
با FormsAuthentication.Authenticate نگران SQL Injection نباشید.
البته باید در web.config نام کاربران را اظافه کنید:


<credentials passwordFormat="SHA1" >
<user name="Kim"
password="07B7F3EE06F278DB966BE960E7CBBD103DF30CA6"/>
<user name="John"
password="BA56E5E0366D003E98EA1C7F04ABF8FCB3753889"/>
</credentials>

nazaninam
چهارشنبه 23 فروردین 1385, 18:52 عصر
بله این روش برای کار با بانک هست

mahdi_negahi
چهارشنبه 23 فروردین 1385, 19:53 عصر
خوب در روش بالا فقط یک سری کاربران که از قبل می دونستیم می توانند وارد شوند؟

esiexe
شنبه 13 خرداد 1385, 06:30 صبح
sqlconnection con=new sqlconection("کانکشن استرینگ");
sqlcommand cmd = con.creatcommand();
cmd.commandtext="select * from tablename where username='"+usernametextbox+"' and password='"+passtextbox+'"
sqldatareader sqlread=cmd.executereader();
if (sqlread.read(){okuser}

ali_sorouri2005
شنبه 13 خرداد 1385, 07:51 صبح
سلام
فکر کنم بهتر باشه جستجو بر اساس یه فیلد باشه نه دو تا فیلد تا سرعت جستجو بیشتر بشه
برای این منظور باید بر اساس username انجام بشه اگر پیدا شد بیاد پسورد رو با فیلد پسورد چک کنه اگه اینم درست بود خوب دیگه کاربر محترم بفرمایید تو !