PDA

View Full Version : مبتدی: کاربرد session_id



omid_student
چهارشنبه 23 اردیبهشت 1394, 19:26 عصر
سلام دوستان
باور کنید من هنوز ندونستم کاربرد session_id چیه و چه کاربردی داره
امکانش هست توضیح بدید و یه مثال بزنید
در موردش توضیحاتی خوندم ولی چیزی دستگیرم نشده

m_r_1989
چهارشنبه 23 اردیبهشت 1394, 23:36 عصر
<?php
session_start();
$_SESSION['name']="s";
$_SESSION['family']="s";

echo session_id('nam') ;
$_SESSION['date']="s";
$_SESSION['p']="s";

echo "<br>". session_id('p') ;
?>



این کد رو ببینیداجرا کنید متوجه میشید
کارش دقیقا این هست که وقتی شما یک session می سازید به آن یک id مثل id دیتابیس auto increment تعلق می گیرد که شما می تونید از آن را روی دیتا بیس ذخیره کنید و تعداد session های که روی وب سایت هست رو چک کنید و اینکه این تابع یک پارامتر از نوع string می گیرد که شما می توانید آن id را که می سازد خودتون نام گذاری کنید

omid_student
جمعه 25 اردیبهشت 1394, 10:05 صبح
<?php
session_start();
$_SESSION['name']="s";
$_SESSION['family']="s";

echo session_id('nam') ;
$_SESSION['date']="s";
$_SESSION['p']="s";

echo "<br>". session_id('p') ;
?>



این کد رو ببینیداجرا کنید متوجه میشید
کارش دقیقا این هست که وقتی شما یک session می سازید به آن یک id مثل id دیتابیس auto increment تعلق می گیرد که شما می تونید از آن را روی دیتا بیس ذخیره کنید و تعداد session های که روی وب سایت هست رو چک کنید و اینکه این تابع یک پارامتر از نوع string می گیرد که شما می توانید آن id را که می سازد خودتون نام گذاری کنید
ممنون از شما کاربردش چیه؟

m_r_1989
جمعه 25 اردیبهشت 1394, 23:44 عصر
کاربردش این هست که شما می توانید با ذخیره این id در دیتابیس متوجه شوید که چند کاربر در روز لاگین می کنند یا تعداد session ها رو بدانید

MMSHFE
شنبه 26 اردیبهشت 1394, 01:35 صبح
کلاً Session ID برای ایجادکردن تفاوت بین سشنهای کاربران هست. این مقدار برای کلاینت ارسال میشه و توی کوکی ذخیره میشه (اگه کوکی غیرفعال شده باشه و trans_sid فعال باشه، بطور خودکار در فرمها ازطریق یک عنصر مخفی و در لینکها با اضافه شدن به آدرس به روش GET ارسال خواهد شد و اگه trans_sid هم غیرفعال باشه، باید خودتون این کار رو انجام بدین). کلاینت در مراجعات بعدی خودش با ارسال این مقدار به سرور، بهش میفهمونه که کدوم سشن متعلق به اونه و سرور هم اطلاعاتش رو از بین چندین فایل سشن که در اختیار داره، بارگذاری میکنه. با session_regenerate_id هم میتونید id سشن کاربران رو عوض کنید که برای جلوگیری از حملاتی مثل Session Hijacking و Session Fixation و... کاربرد داره.

omid_student
یک شنبه 27 اردیبهشت 1394, 10:01 صبح
کلاً Session ID برای ایجادکردن تفاوت بین سشنهای کاربران هست. این مقدار برای کلاینت ارسال میشه و توی کوکی ذخیره میشه (اگه کوکی غیرفعال شده باشه و trans_sid فعال باشه، بطور خودکار در فرمها ازطریق یک عنصر مخفی و در لینکها با اضافه شدن به آدرس به روش GET ارسال خواهد شد و اگه trans_sid هم غیرفعال باشه، باید خودتون این کار رو انجام بدین). کلاینت در مراجعات بعدی خودش با ارسال این مقدار به سرور، بهش میفهمونه که کدوم سشن متعلق به اونه و سرور هم اطلاعاتش رو از بین چندین فایل سشن که در اختیار داره، بارگذاری میکنه. با session_regenerate_id هم میتونید id سشن کاربران رو عوض کنید که برای جلوگیری از حملاتی مثل Session Hijacking و Session Fixation و... کاربرد داره.
خیلی جالب بود ممنون
یه سوال دیگه
session_generated_id رو کی باید استفاده کنی و از کجا بدونی که حمل شده تا ای دی رو عوض کنی

MMSHFE
یک شنبه 27 اردیبهشت 1394, 10:05 صبح
نباید منتظر بمونید تا حمله بشه. معمولاً برای اینکه به سرور هم فشار نیاد، بعد از هر چند درخواست، سشن آیدی رو عوض میکنن. بعضیها هم که خیلی حساس هستن، توی هر درخواست عوضش میکنن.

omid_student
دوشنبه 28 اردیبهشت 1394, 10:19 صبح
نباید منتظر بمونید تا حمله بشه. معمولاً برای اینکه به سرور هم فشار نیاد، بعد از هر چند درخواست، سشن آیدی رو عوض میکنن. بعضیها هم که خیلی حساس هستن، توی هر درخواست عوضش میکنن.

یا استخدوس حمله؟
من از فریم ورک کدایگنایتر استفاده میکنم چطور باید آي دی رو دوباره تولید کنم خودش اینکار رو میکنه؟
در کل چطوریه؟میشه یه توضیحی بدید خیلی سپاسگذارم میشما :افسرده: