آیا ارسال داده ها با روش POST راه مطمئنی برای حفط داده های محرمانه هست؟ اگر نه، پس برای ارسال اینجور داده ها باید چطوری عمل کرد؟
ممنون میشم دوستان مطلع در مورد نحوه ی عملکرد این متد راهنمایی کنند.
سپاس فراوان
آیا ارسال داده ها با روش POST راه مطمئنی برای حفط داده های محرمانه هست؟ اگر نه، پس برای ارسال اینجور داده ها باید چطوری عمل کرد؟
ممنون میشم دوستان مطلع در مورد نحوه ی عملکرد این متد راهنمایی کنند.
سپاس فراوان
آخرین ویرایش به وسیله atpf67 : دوشنبه 20 مهر 1394 در 01:11 صبح دلیل: اصلاح عنوان
محرمانه یعنی چی ؟ یعنی اگه کسی روی شبکه sniff کنه نتونه اطلاعات را بخونه !؟ اگه اینه که با ssl میشه ، ما اگه منظورتون اینه کسی که پشت کامپیوتر اصلی هست نتونه بخونه غیر ممکنه. کلا نمیگیرم محرمانه چیه ؟یا ارسال داده ها با روش POST راه مطمئنی برای حفط داده های محرمانه هست؟ اگر نه، پس برای ارسال اینجور داده ها باید چطوری عمل کرد؟
سپاسگزارم دوست عزیز، من برای جلوگیری از SQL Ijection از تابع mysqli_real_escape_string برای امن کردن کوئری ها استفاده کردم و همچنین برای امن کردن داده های خروجی هم از تابع htmlspecialchars استفاده کردم، ممنون میشم اگر روش های دیگه ای هست که در کنار اینها به امنیت کار کمک میکنه بیان کنید.
اما راستش آنچه من توی این تاپیک مد نظرم بود این بود که ما توی متد GET میتونیم پارامتر ها و مقدارشون رو خیلی راحت ببینیم و تغییر بدیم:
آنچه مسلم هست اینکه این روش برای انجام کارهای مهم مثل لاگین کردن اصلاً درست نیست، حالا سوال اصلی من اینه:
امنیت اون username و pass توی ارسال داده ها با متد POST چقدر نسبت به متد GET بیشتره و اینکه آیا تنها ارسال این داده ها با متد POST برای "تأمین امنیت داده هنگام ارسال تا قبل از رسیدن به سرور" کافیه یا اینکه باید کار دیگه ای هم سمت کلاینت انجام بشه؟
آخرین ویرایش به وسیله atpf67 : سه شنبه 21 مهر 1394 در 15:21 عصر
فرق POST با GET اینه که مقادیر به جای URL توی header ها ارسال میشن ، عموما کسی از GET برای فرم لاگین استفاده نمیکنه. چون ممکنه کسی کنار کاربر باشه و مقدار را ببینه ! اما اینکه با POST ارسال بشه معنیش این نیست که نمیشه اطلاعات را دید. مثلا میتونید پلاگین LiveHtpheaders فایرفاکس را نصب کنید و این header ها را ببینید.امنیت اون username و pass توی ارسال داده ها با متد POST چقدر نسبت به متد GET بیشتره و اینکه آیا تنها ارسال این داده ها با متد POST برای "تأمین امنیت داده هنگام ارسال تا قبل از رسیدن به سرور" کافیه یا اینکه باید کار دیگه ای هم سمت کلاینت انجام بشه؟
من از سوال شما استنباط میکنم منظورتون اینه که اگه کسی شبکه ما را شنود کنه یا روی router ی که ازش رد میشه شنود بگداره میتونه اطلاعات POST را ببینه !؟ پاسختون بله هستش چون شما دارین اطلاعات را Plain Text یا همون متن خام میفرستین ، اگه برای سایتتون SSL بگیرین اطلاعات کد میشن و کسی نمیتونه بهشون دسترسی پیدا کنه. بانک ها و سایت های بزرگ به همین دلیل از SSL استفاده میکنند.