Защита сессии пользователя
Короче я думал над тем что в моем приложении(я в одной теме я писал что там не надо будет защита), но я там ошибся)) так как там же идет запрос на сервер чтобы провести игру, в котором передается ид пользователя с которого будут сниматься его очки, так я от подумал как сделать чтобы только данный пользователь имел право провести запрос на игру с данными своего ида, ну короче чтобы только ты мог играть(а не взломщик)))
ну так вот, изучивши SQL запросы, и их использование в PHP(поверхностно, ну так чтобы мне хватало на мои творения))) я придумал вот так ограничивать возможность провидения игры, в БД есть столбик СЕССИОННЫЙ КЛЮЧ, в него записываться ключ, но не созданный рандомом, или самой программой, а пользователем, то есть при установке и первом запуске приложение пользователя извещает что нужно ввести свой СЕССИОННЫЙ ПАРОЛЬ который защищает доступ к его аккаунту и с помощью которого производятся денежные операции(его потом можно будет менять в настройках), после этого, в БД этот ключ вписываться, потом при первой попытке сыграть пользователя просит ввести его ключ чтобы подтвердить свои действия, он вводит и этот ключ сохраняется в куках на текущею сессию браузера, то бишь вводить снова ключ надо будет после перезапуска браузера или же когда ты вообще не с своего компа, ну самое главное заключается в том что операции проходят если только при отправке запроса вводимый СЕССИОННЫЙ КЛЮЧ совпадает с БДшним, и далее, взлом аккаунта может быть уже только такими способами, взлом моей БД(хотя там нечего ломать 6 столбцов 5 из них типа ИНТ, и последняя ТЕКСТ, но когда вписывается то, он не хешируется а шифрируется с помощью encode, ну я просто по другому наверно ещё не умею)))), 2 самый наверно вероятный, подбор пароля акка но наверно это не кому не нужно потому что ты ломаешь только один акк а не как первым способом ВСЕ)), и тем более мне же не страшно вся вина уже тут ложиться на аккаунт, 3 в этой я не уверен, но тут наверно если вирус или нежелательное ПО на компьютере клиента, оно может прочитать куки(НАВЕРНО)) я не много знаю и почти не разбираюсь но мне кажется это реально))), может ещё есть куча способов, но они кажутся по-одинокими и не страшными) но это я считаю что система вроде нормальная, и даже если с психологической точки смотреть, то если бы мне предлагали бы создавать свой подтверждающий ключ было бы ясно что приложение имеет какую-то систему защищено, чтобы повысило общее доверие к приложению)) прочитавши ещё раз и просмотревши некоторую струю тему на форуме я подумал что всё-таки как-то стрёмно хранить ключ в куках, не находите?)) но выхода кажется как такового и нет)) И да, это, я знаю существует куча систем защит, и наверно ещё больше их обсуждений, но вы пока укажите де могут быть просчёты в моей?) P.S.: Кто не в теме то ЗИС ИС ВКККК!)) :DD , чтоб потом не посылали ещё дальше))) |
я как понимаю, эта система всё-таки надёжна, или никто ещё ничего не написал потому что всем лень думать над тем что я написал, ясно, пойду это делать потом если что буду переделывать))
|
Это просто невозможно читать, только и всего.
|
Цитата:
Типа: $hash = md5($password . 'Slawaq '); Вообще не вижу большой разницы с обычной регистрацией. Например зачем хранить ключ в куках, если в них и так будет храниться идентификатор сессии залогиненного в игре юзера. |
По моему самая обычная регистрация)) и пользователь вводит самый обычный пароль))
А насчет как авторизовать пользователя: Или я не правильно понял, но можно и не в куках, а просто в сессии ? Есть такой массив $_SESSION)) к нему по моему никак нельзя получить доступ если я не ошибаюсь. |
Цитата:
|
Цитата:
|
walik,
странно,а как тогда все к нему получают доступ?и работают с сессиями? |
Цитата:
Сессии и Кукисы |
Цитата:
С помощью массива $_SESSION[]-ответ заставляет задуматься. на вопрос а как же к массиву $_SESSION все получают доступ и работают с ним,следует ответ-С помощью массива $_SESSION[].... алогизм полный..или с ним работают с помощью негоже,но доступ к нему получить нельзя?)) |
dmitriymar,
У меня такое чувство что мы не понимаем друг друг, я вам об одном, а вы мне о другом :) Не могу понять вопрос: Цитата:
самым обычным образом: session_start(); // открывает сессию $_SESSION['name'] = 'walik'; // присваиваем переменной сессии 'name' значение 'walik' // и в течение одного сеанса эта переменная будет доступна, если ее не удалять. как то так, я ссылочку выше предоставил с описанием что такое сессия. |
прочитай свои предыдущие посты на эту тему.. какойто ты полностью алогичный. когда пытаюсь у тебя узнать на какой стороне ты не можешь получить доступ- утверждаешь что на серверной нельзя. когда намекаю ,что если нельзя,то как же все остальные работают-ты пытаешься научить меня работать с ним.задумался бы хоть могу или нет прежде чем меня "учить":haha:
|
Цитата:
Все так и мы не поняли друг друга :) И я не кого не учу, и вас тоже, просто сказал свою мысль. |
Цитата:
и сессии хранятся там же где и куки .так что доступ для посторонних одинаков. разница всего во времени работоспособности по умолчанию. |
Я не хакер, и как взламывать не знаю, но читал раньше о том что есть возможность получить чужие кукисы
|
а что мешает получить и сесии?-они в одном месте хранятся с куками на компе
|
Цитата:
По ссылочке которую я дал раньше можно прочитать: Цитата:
|
Цитата:
|
Цитата:
|
Цитата:
основное различное с куками -сессия состоит из 2х частей сессии и идентификатора её -по времени жизни(по умолчанию разные) общее с куками сессии абсолютно всё равно находиться ли идентификатор на том компе на какой она его записала или перенесён на другой доступ к идентификатору сессии может получить только сайт её создавший идентиф. сессии и куки хранятся в одном месте |
сессия - это в первую очередь данные, которые (обычно) с помощью кук привязаны к пользователю. И эти данные хранятся на сервере. А куки хранятся на клиенте. Javascript-код, выполняющийся в контексте некоторого домена, имеет доступ к кукам с этого домена, но не имеет доступа к сессиям. Сессионные переменные он в лучшем случае может наковырять, посылая запросы на сервер. И то все переменные обычно в таком случае не получить
|
Часовой пояс GMT +3, время: 04:13. |