PDA

View Full Version : سوال: احراز هویت با token



opluse
شنبه 28 شهریور 1394, 11:47 صبح
سلام دوستان

اگه کسی نمونه کد ساده احراز هویت با token رو داره بزاره اینجا ممنون میشم .

pejman_view
سه شنبه 31 شهریور 1394, 02:57 صبح
سلام

دقیقاً چیکار می خواهید بکنید تا کدی را ارائه بدهم.
استفاده از توکن بعنوان کلید امنیتی در خیلی از جاها استفاده دارد. مانند جلوگیری از CSRF یا API ها بصورت متداول استفاده دارد. لطفاً توضیح بیشتری دهید تا در خدمتتان باشم و توضیحات و کدهای لازمه را ارائه دهم.

Unique
سه شنبه 31 شهریور 1394, 17:37 عصر
آقا پژمان فکر نکنم منظورشون CSRF یا token های سرویس های API باشه ! برخی مواقع هست که میخوایم کاربر را auto login کنیم. میشه براش برای مدت کوتاهی یک token ساخت و از طریق اون token توی url مثلا به همراه نام کاربری احراز هویت و لاگینش کرد. احتمال میدم منظورشون اینه.

opluse
یک شنبه 05 مهر 1394, 13:20 عصر
آقا پژمان فکر نکنم منظورشون CSRF یا token های سرویس های API باشه ! برخی مواقع هست که میخوایم کاربر را auto login کنیم. میشه براش برای مدت کوتاهی یک token ساخت و از طریق اون token توی url مثلا به همراه نام کاربری احراز هویت و لاگینش کرد. احتمال میدم منظورشون اینه.

بله دقیقا منظورم همچین چیزی هست ! اگه کمی بیشتر همراه با نمونه کد توضیح بدید ممنون میشم .

Unique
یک شنبه 05 مهر 1394, 13:57 عصر
من که توضیح دادم ! یک جدول بساز مثلا autologin و توش چهار تا فیلد بگذار ، id,user_id,token,expire حالا هر وقت خواستی لینک autologin درست کنی نام کاربری و یک token (معمولا یک رشته که نشه با راحتی حدس زد را md5 یا sha1 میکنن) و زمان انقضا توش insert کن. حالا token را توی url برای کاربر ایمیل یا هر کاری دوست داشتی انجام بده.

توی صفحه ای که login میکنی اگه token توی url بود اول بیا رکورد هایی که تاریخ expire اون گذشته را حذف کن و بعدش select بگیر برای اون token و با توجه به user_id رکورد مرتبط login کن.
شرمنده من روزی ۱۰ دقیقه هم شاید نتونم بیام انجمن و واقعا نمیتونم کد بگذارم. اما توضیحش همینه و اصلا کار سخیت نیست. expire را هم زیاد نگذار مثلا ۳ یا ۶ ساعت یا نهایتا ۱ روز.