PDA

View Full Version : علت ذخیره سشن در دیتابیس



persian-boy
یک شنبه 24 اردیبهشت 1391, 21:47 عصر
سلام دوستان

من یه جا خونده بودم که ذخیره سشن در دیتابیس یکی از روش های تامین امنیت هست . یک توضیح در مورد این که چرا باید اینکار رو بکنیم و کی ها اینکار انجام میشه و از چه چیزی جلوگیری میکنه ؟

fallahpour
دوشنبه 25 اردیبهشت 1391, 10:11 صبح
سشن یا همون جلسه نگه داشتن اطلاعات اولیه کاربر در سمت سروره که کاربرد های فراوانی داره .... بحث امنیت به خاطر وجود سشن سمت سرور هست که امنیت اطلاعات کاربری را بر خلاف کوکی افزایش میده...
معمولا سشن ابتدا و موقع لاگین شدن ساخته میشه... و اطلاعات کاربر از قبیل رمز و آی پی و... به سمت سرور فرستاده میشه...
و اگر برنامه نویس سایت فردی حرفه ای باشه میاد سشن شما را تلفیقی از رمز و آی پی قرار میده که دیگه هیچ کس به جز شما نتونه با یوزر لاگین بشه...

امیدوارم توضیحاتم کافی باشه...

eshpilen
دوشنبه 25 اردیبهشت 1391, 11:15 صبح
من یه جا خونده بودم که ذخیره سشن در دیتابیس یکی از روش های تامین امنیت هست . یک توضیح در مورد این که چرا باید اینکار رو بکنیم و کی ها اینکار انجام میشه و از چه چیزی جلوگیری میکنه ؟
چون محل ذخیرهء فایلهای سشن PHP در سمت سرور میتونه امن نباشه و بقیهء کسانی که روی سرور مشترکی با مال شما سرویس هاست دارن میتونن به اطلاعات سشن های شما دست پیدا کنن و حتی ممکنه اونا رو دستکاری کنن.
درواقع سشن های PHP بصورت پیشفرض امن نیستن، ولی خیلی افراد این مسئله رو نمیدونستن یا دست کم گرفتن و بخاطر همین حفره های امنیتی جدی در خیلی برنامه ها وجود داشته و داره.
البته فکر میکنم درحال حاضر امنیت سرورها در این زمینه نسبت به سالهای قبل بهتر شده باشه و هاستهای بیشتری از این نظر امن شده باشن (بستگی به کانفیگ و روشهای استفاده شده داره). بهرصورت از نظر امنیتی شما نباید روی این قضیه اتکا کنید و به شانس و تصادف امیدوار باشید.

یکی از راههای حل این مشکل، ذخیرهء سشن ها در دیتابیس است. اما روشهای دیگری مثل تغییر دایرکتوری ذخیرهء سشن ها به یک مکان امن هم وجود دارن.

djsaeedkhan
دوشنبه 25 اردیبهشت 1391, 11:29 صبح
چون محل ذخیرهء فایلهای سشن PHP در سمت سرور میتونه امن نباشه و بقیهء کسانی که روی سرور مشترکی با مال شما سرویس هاست دارن میتونن به اطلاعات سشن های شما دست پیدا کنن و حتی ممکنه اونا رو دستکاری کنن.
درواقع سشن های PHP بصورت پیشفرض امن نیستن، ولی خیلی افراد این مسئله رو نمیدونستن یا دست کم گرفتن و بخاطر همین حفره های امنیتی جدی در خیلی برنامه ها وجود داشته و داره.
البته فکر میکنم درحال حاضر امنیت سرورها در این زمینه نسبت به سالهای قبل بهتر شده باشه و هاستهای بیشتری از این نظر امن شده باشن (بستگی به کانفیگ و روشهای استفاده شده داره). بهرصورت از نظر امنیتی شما نباید روی این قضیه اتکا کنید و به شانس و تصادف امیدوار باشید.

یکی از راههای حل این مشکل، ذخیرهء سشن ها در دیتابیس است. اما روشهای دیگری مثل تغییر دایرکتوری ذخیرهء سشن ها به یک مکان امن هم وجود دارن.

سلام
من تا حالا ازین روش استفاده نکردم. برام سوال شد که اگر تو یه صفحه چندین با بخوای از سشن استفاده کنیم و هر بار اتصال به دیتابیس و چند بار کوری و بعد برای تعداد زیادی کاربر ، سرعت رو کم نمی کنه

eshpilen
دوشنبه 25 اردیبهشت 1391, 23:32 عصر
هر چیزی هزینه ای داره.
امنیت مهمه و هزینه داره.
در عمل ببین مشکلی ایجاد نمیکنه خب مشکلی نیست دیگه.
مگر اینکه سایتت بطور معمول ترافیک واقعا سنگینی داشته باشه، بنظرم این چندتا کوئری به ازای هر درخواست عملا تاثیر و مشکل مشهودی نخواهند داشت.

ضمنا راه تغییر دایرکتوری هم هست که نیازی به دیتابیس نداره.

eshpilen
سه شنبه 26 اردیبهشت 1391, 11:35 صبح
ضمنا فکر نکن هربار که یک متغییر سشن رو میخونی یا ست میکنی یک کوئری اجرا میشه.
نه بنظرم اینطوریه که موقع استارت سشن تمام متغییرهای سشن خونده میشن و میان در RAM و هربار که شما متغییری رو میخونی کوئری مجدد اجرا نمیشه، و همینطور سشن فقط یک بار در انتهای اجرای برنامه در دیتابیس سیو میشه، نه هر بار که یک متغییر سشن رو ست میکنی.

حالت معمولی سشن با سیستم فایل که همینه تاجاییکه تست کردم و میدونم.