/
  • استفاده از سشن یا کوکی در هنگام ورود کاربر. کدامیک بهتر است؟

  • ارسال پاسخ   امتیاز موضوع:
    • 2 رأی - میانگین امیتازات: 3
    • 1
    • 2
    • 3
    • 4
    • 5

    حالت موضوعی | حالت خطی استفاده از سشن یا کوکی در هنگام ورود کاربر. کدامیک بهتر است؟
    نویسنده پیام
    amindeist آفلاین
    عضو جدید
    **

    ارسال‌ها: 15
    تاریخ عضویت: ۱۳۹۵ ارديبهشت ۵
    اعتبار: 0
    تشکرها : 0
    ( 1 تشکر در 1 ارسال )
    ارسال: #1
    استفاده از سشن یا کوکی در هنگام ورود کاربر. کدامیک بهتر است؟
    سلام خدمت اساتید محترم
    دوستان یه سوالی برام پیش اومده که ممنون میشم توضیحات کامل و جامعی رو بدید.
    سوال اینه که من زمانی که کاربری وارد حساب کاربریش میشه از کوکی برای نگه داشتن اطلاعاتش استفاده میکنم. اما در یکی از آموزش ها به زبان اصلی دیدم که از سشن استفاده کرده. آیا اگر از سشن استفاده بشه بار اضافی بر روی سرور ایجاد نخواهد شد؟ امنیت کدام یک بیشتر است و در کل شما کدامیک را پیشنهاد میکنید؟

    Sent from my GT-I9305 using Tapatalk
    ۱۳۹۵ ارديبهشت ۲۰ ۱۱:۳۷ عصر
    یافتن ارسال‌ها پاسخ با نقل قول
     تشکر شده توسط :
    kasbookar آفلاین
    **(فرشاد انگوتی)**
    ****

    ارسال‌ها: 525
    تاریخ عضویت: ۱۳۹۳ دي ۲۳
    اعتبار: 17
    تشکرها : 258
    ( 169 تشکر در 128 ارسال )
    ارسال: #2
    RE: استفاده از سشن یا کوکی در هنگام ورود کاربر. کدامیک بهتر است؟
    سلام
    Session برای ذخیره سازی اطلاعات مربوط هر کاربر در سمت سرور است اما cookie برای اطلاعات مربوط به هر کاربر در مرورگر وب است. امنیت session بسیار بالاتر از cookie است و بهتر است اطلاعات با اهمیتتر در session و اطلاعات بی اهمیت مانند تنظیمات سمت کلاینت کاربر در cookie ذخیره شوند. سیشن باری روی سرور نمیندازه بهترین راه استفاده از سشن هست با اینکه بازهم امنیت 100 درصد نیستExclamation
    __________________________________________________________________________

    ۱۳۹۵ ارديبهشت ۲۱ ۱۲:۲۸ صبح
    یافتن ارسال‌ها WWW پاسخ با نقل قول
     تشکر شده توسط : miniprogrammer Y.P.Y Alaa ayoubsys
    farhadhp آفلاین
    FarhadHP
    ***

    ارسال‌ها: 207
    تاریخ عضویت: ۱۳۹۴ بهمن ۱۸
    اعتبار: 4
    تشکرها : 134
    ( 118 تشکر در 78 ارسال )
    ارسال: #3
    RE: استفاده از سشن یا کوکی در هنگام ورود کاربر. کدامیک بهتر است؟
    اگه دنبال امنیت بیشتری توصیه میکنم از token استفاده کنی...

    امنیت متوسط میخوای سشن ...

    از کوکی هرگز استفاده نکن ...
    __________________________________________________________________________
    همیشه برای یادگیری، موضوعاتی هست!

    مجله دامین هاست

    رزومه / بیرگیک

    ۱۳۹۵ ارديبهشت ۲۱ ۰۲:۵۸ عصر
    یافتن ارسال‌ها WWW پاسخ با نقل قول
     تشکر شده توسط :
    amindeist آفلاین
    عضو جدید
    **

    ارسال‌ها: 15
    تاریخ عضویت: ۱۳۹۵ ارديبهشت ۵
    اعتبار: 0
    تشکرها : 0
    ( 1 تشکر در 1 ارسال )
    ارسال: #4
    RE: استفاده از سشن یا کوکی در هنگام ورود کاربر. کدامیک بهتر است؟
    (۱۳۹۵ ارديبهشت ۲۱ ۱۲:۲۸ صبح)kasbookar نوشته شده توسط:  سلام
    Session برای ذخیره سازی اطلاعات مربوط هر کاربر در سمت سرور است اما cookie برای اطلاعات مربوط به هر کاربر در مرورگر وب است. امنیت session بسیار بالاتر از cookie است و بهتر است اطلاعات با اهمیتتر در session و اطلاعات بی اهمیت مانند تنظیمات سمت کلاینت کاربر در cookie ذخیره شوند. سیشن باری روی سرور نمیندازه بهترین راه استفاده از سشن هست با اینکه بازهم امنیت 100 درصد نیستExclamation
    تشکر دوست عزیز

    Sent from my GT-I9305 using Tapatalk

    (۱۳۹۵ ارديبهشت ۲۱ ۰۲:۵۸ عصر)farhadhp نوشته شده توسط:  اگه دنبال امنیت بیشتری توصیه میکنم از token استفاده کنی...

    امنیت متوسط میخوای سشن ...

    از کوکی هرگز استفاده نکن ...
    آقا توکن چی هست و چطور میتونم از اون استفاده کنم

    Sent from my GT-I9305 using Tapatalk
    (آخرین ویرایش در این ارسال: ۱۳۹۵ ارديبهشت ۲۲ ۰۹:۵۲ صبح، توسط amindeist.)
    ۱۳۹۵ ارديبهشت ۲۲ ۰۹:۵۱ صبح
    یافتن ارسال‌ها پاسخ با نقل قول
     تشکر شده توسط :
    kasbookar آفلاین
    **(فرشاد انگوتی)**
    ****

    ارسال‌ها: 525
    تاریخ عضویت: ۱۳۹۳ دي ۲۳
    اعتبار: 17
    تشکرها : 258
    ( 169 تشکر در 128 ارسال )
    ارسال: #5
    RE: استفاده از سشن یا کوکی در هنگام ورود کاربر. کدامیک بهتر است؟
    به این مثال توجه کنید

    کد PHP:
    <?php
    session_start
    ();
    if(isset(
    $_POST['submit'],$_POST['text'],$_SESSION['token_key'],$_POST['token_key']) 
            && $_SESSION['token_key']==$_POST['token_key'])
            {
                echo $_POST['text'];    
    }
    $token_key=md5(time());
    $_SESSION['token_key']=$token_key;    
    ?>
    <form id="form1" name="form1" method="post" action="">
      <p>
        <label for="text"></label>
        <input type="text" name="text" id="text" />
      </p>
      <p>
        <input type="submit" name="submit" id="submit" value="Submit" />
        <input name="token_key" type="hidden" id="token_key" value="<?php echo $token_key;?>" />
      </p>
    </form> 
    توکن در کل یعنی اینکه ما یک کد قبل از ارسال تولید کنیم و داخل صفحه ای که اطلاعاتو میگیریم اونو بررسی کنیم که این کد همون کدی هست که ارسال شده یا نه در غیر این صورت false بده
    توضیحات
    برای مثال در کد بالا یک input مخفی تعریف کردیم قبل از فرم هم یک توکن ایجاد کردیم یعنی این کد که هر بار بعد از رفرش صفحه یک کد تولید میکنه که مقدار اون رو در token_key ریختیم!
    کد PHP:
    $token_key=md5(time()); 

    شما میتونید یک کد پیچیده تر هم درست کنید که حدس زدن اون سخت باشه !
    نکته : توکن رو داخل هیچ شرطی و یا حلقه ای قرار ندهید

    بعد از تولید توکن اون ردو با کد زیر داخل یک سیشن ریختیم تا در صفحات بعدی با کد ارسالی بررسی کنیم
    کد PHP:
    $_SESSION['token_key'
    حالا باید در موقع submit شدن فرم این مقدار رو چک کنیم که ببینیم درست هست یا نه !

    بعد از تولید کد رندوم و فعال شدن سیشن که حاوی کد تولید شده هست باید بررسی کنیم که ایا کد ارسالی با مقدار سیشن برابر است یا نه
    با این کد
    کد PHP:
    if(isset($_POST['submit'],$_POST['text'],$_SESSION['token_key'],$_POST['token_key']) 
            && $_SESSION['token_key']==$_POST['token_key'])
            
    اگه برابر بود کدها اجرا میشه اگه نبود مقدار false و اجرا نشدن کدها
    تمامCool
    __________________________________________________________________________

    ۱۳۹۵ ارديبهشت ۲۲ ۱۱:۰۲ صبح
    یافتن ارسال‌ها WWW پاسخ با نقل قول
     تشکر شده توسط : Alaa
    amindeist آفلاین
    عضو جدید
    **

    ارسال‌ها: 15
    تاریخ عضویت: ۱۳۹۵ ارديبهشت ۵
    اعتبار: 0
    تشکرها : 0
    ( 1 تشکر در 1 ارسال )
    ارسال: #6
    RE: استفاده از سشن یا کوکی در هنگام ورود کاربر. کدامیک بهتر است؟
    (۱۳۹۵ ارديبهشت ۲۲ ۱۱:۰۲ صبح)kasbookar نوشته شده توسط:  به این مثال توجه کنید

    کد PHP:
    <?php
    session_start
    ();
    if(isset(
    $_POST['submit'],$_POST['text'],$_SESSION['token_key'],$_POST['token_key']) 
            && $_SESSION['token_key']==$_POST['token_key'])
            {
                echo $_POST['text'];    
    }
    $token_key=md5(time());
    $_SESSION['token_key']=$token_key;    
    ?>
    <form id="form1" name="form1" method="post" action="">
      <p>
        <label for="text"></label>
        <input type="text" name="text" id="text" />
      </p>
      <p>
        <input type="submit" name="submit" id="submit" value="Submit" />
        <input name="token_key" type="hidden" id="token_key" value="<?php echo $token_key;?>" />
      </p>
    </form> 
    توکن در کل یعنی اینکه ما یک کد قبل از ارسال تولید کنیم و داخل صفحه ای که اطلاعاتو میگیریم اونو بررسی کنیم که این کد همون کدی هست که ارسال شده یا نه در غیر این صورت false بده
    توضیحات
    برای مثال در کد بالا یک input مخفی تعریف کردیم قبل از فرم هم یک توکن ایجاد کردیم یعنی این کد که هر بار بعد از رفرش صفحه یک کد تولید میکنه که مقدار اون رو در token_key ریختیم!
    کد PHP:
    $token_key=md5(time()); 

    شما میتونید یک کد پیچیده تر هم درست کنید که حدس زدن اون سخت باشه !
    نکته : توکن رو داخل هیچ شرطی و یا حلقه ای قرار ندهید

    بعد از تولید توکن اون ردو با کد زیر داخل یک سیشن ریختیم تا در صفحات بعدی با کد ارسالی بررسی کنیم
    کد PHP:
    $_SESSION['token_key'
    حالا باید در موقع submit شدن فرم این مقدار رو چک کنیم که ببینیم درست هست یا نه !

    بعد از تولید کد رندوم و فعال شدن سیشن که حاوی کد تولید شده هست باید بررسی کنیم که ایا کد ارسالی با مقدار سیشن برابر است یا نه
    با این کد
    کد PHP:
    if(isset($_POST['submit'],$_POST['text'],$_SESSION['token_key'],$_POST['token_key']) 
            && $_SESSION['token_key']==$_POST['token_key'])
            
    اگه برابر بود کدها اجرا میشه اگه نبود مقدار false و اجرا نشدن کدها
    تمامCool
    بسیار عالی...سپاسگذارم

    Sent from my GT-I9305 using Tapatalk
    ۱۳۹۵ ارديبهشت ۲۲ ۱۱:۰۹ صبح
    یافتن ارسال‌ها پاسخ با نقل قول
     تشکر شده توسط :
    « قدیمی تر | تازه‌ تر »

    ارسال پاسخ
    پرش به انجمن:


    کاربرانِ درحال بازدید از این موضوع: 1 مهمان
    IranPHP.org | تماس با ما | بازگشت به بالا | بازگشت به محتوا | بایگانی | پیوند سایتی RSS