ذخیره توکن در asp.net core
سلام
من در حال ایجاد یک web API با .net core هستم
و client رو هم باasp.net core پیاده میکنم
سوالی برام پیش اومده
من در web api خودم از jwt استفاده کردم یعنی بعد از لاگین کاربر یک توکن(رشته) میسازم و اون رو به کاربر بر میگردونم،
کاربر بعد از این برای هر درخواست باید توکن رو در هدر درخواستش ارسال کنه
سوالی که دارم اینه:
در سمت کلاینت که asp.net core هست چطور توکنو دریافت و ذخیره کنم آیا نیازه که ذخیره کنم یا نه چون هر بار که درخواستی به سرور ارسال کنم باید در هدر درخواستم توکن رو قرار بدم
راهی که به ذهن خودم میرسه اینه که توکن رو بعد از دریافت از سرور در کوکی یا سشن نگه دارم و از این به بعد برای هر درخواست توکن رو از کوکی یا سشن بخونم و در هدر درخواستم قرار بدم.
ممنون میشم از دوستان کسی راهنمایی کنه
نقل قول: ذخیره توکن در asp.net core
آیا این توکن ساختن بعدا استفاده میشه؟ یا فقط برای امنیت هست؟
اگه بعدا بهش نیاز ندارین و فقط جنبه امنیتی نرم افزارتون رو انجام میده نیازی به ذخیره سازیش ندارین وبه نظر میرسه اون راهی که به ذهنتون میرسه درست تره
نقل قول: ذخیره توکن در asp.net core
به هیچ وجه اطلاعات توکن رو در حافظه ی ثابت ذخیره نکنید. در برنامه های کلاینت همیشه میشه متغیری ساخت که در قسمت های مختلف برنامه در دسترس باشه.
سرور هر زمانی ممکنه توکن رو تغییر بده و ذخیره کردن اون در کوکی یا سشن مشکل امنیتی داره.
نقل قول: ذخیره توکن در asp.net core
JWT در حقیقت اطلاعات کاربر هستش که به صورت hash یا base64 و یا رمز نگاری شده در مرورگر نگه داری میشه برای امنیت این توکن رو رمز نگاری کنین تا مشکلی پیش نیاد
می تونین در localstorage ذخیره کنین و در هر بار درخواست در هدر ارسال کنید اگر angular استفاده کنین خیلی راحت تر می تونین استفاده کنین