Javascript-форум (https://javascript.ru/forum/)
-   Серверные языки и технологии (https://javascript.ru/forum/server/)
-   -   Защита сессии пользователя (https://javascript.ru/forum/server/12712-zashhita-sessii-polzovatelya.html)

Slawaq 30.10.2010 01:14

Защита сессии пользователя
 
Короче я думал над тем что в моем приложении(я в одной теме я писал что там не надо будет защита), но я там ошибся)) так как там же идет запрос на сервер чтобы провести игру, в котором передается ид пользователя с которого будут сниматься его очки, так я от подумал как сделать чтобы только данный пользователь имел право провести запрос на игру с данными своего ида, ну короче чтобы только ты мог играть(а не взломщик)))
ну так вот, изучивши SQL запросы, и их использование в PHP(поверхностно, ну так чтобы мне хватало на мои творения))) я придумал вот так ограничивать возможность провидения игры, в БД есть столбик СЕССИОННЫЙ КЛЮЧ, в него записываться ключ, но не созданный рандомом, или самой программой, а пользователем, то есть при установке и первом запуске приложение пользователя извещает что нужно ввести свой СЕССИОННЫЙ ПАРОЛЬ который защищает доступ к его аккаунту и с помощью которого производятся денежные операции(его потом можно будет менять в настройках), после этого, в БД этот ключ вписываться, потом при первой попытке сыграть пользователя просит ввести его ключ чтобы подтвердить свои действия, он вводит и этот ключ сохраняется в куках на текущею сессию браузера, то бишь вводить снова ключ надо будет после перезапуска браузера или же когда ты вообще не с своего компа, ну самое главное заключается в том что операции проходят если только при отправке запроса вводимый СЕССИОННЫЙ КЛЮЧ совпадает с БДшним, и далее, взлом аккаунта может быть уже только такими способами, взлом моей БД(хотя там нечего ломать 6 столбцов 5 из них типа ИНТ, и последняя ТЕКСТ, но когда вписывается то, он не хешируется а шифрируется с помощью encode, ну я просто по другому наверно ещё не умею)))), 2 самый наверно вероятный, подбор пароля акка но наверно это не кому не нужно потому что ты ломаешь только один акк а не как первым способом ВСЕ)), и тем более мне же не страшно вся вина уже тут ложиться на аккаунт, 3 в этой я не уверен, но тут наверно если вирус или нежелательное ПО на компьютере клиента, оно может прочитать куки(НАВЕРНО)) я не много знаю и почти не разбираюсь но мне кажется это реально))), может ещё есть куча способов, но они кажутся по-одинокими и не страшными)

но это я считаю что система вроде нормальная, и даже если с психологической точки смотреть, то если бы мне предлагали бы создавать свой подтверждающий ключ было бы ясно что приложение имеет какую-то систему защищено, чтобы повысило общее доверие к приложению))

прочитавши ещё раз и просмотревши некоторую струю тему на форуме я подумал что всё-таки как-то стрёмно хранить ключ в куках, не находите?)) но выхода кажется как такового и нет)) И да, это, я знаю существует куча систем защит, и наверно ещё больше их обсуждений, но вы пока укажите де могут быть просчёты в моей?)

P.S.: Кто не в теме то ЗИС ИС ВКККК!)) :DD , чтоб потом не посылали ещё дальше)))

Slawaq 30.10.2010 18:05

я как понимаю, эта система всё-таки надёжна, или никто ещё ничего не написал потому что всем лень думать над тем что я написал, ясно, пойду это делать потом если что буду переделывать))

Kolyaj 01.11.2010 09:01

Это просто невозможно читать, только и всего.

micscr 01.11.2010 09:23

Цитата:

после этого, в БД этот ключ вписываться,
только вписывается не пароль в базу, а хеш пароля с солью.
Типа:
$hash = md5($password . 'Slawaq ');

Вообще не вижу большой разницы с обычной регистрацией. Например зачем хранить ключ в куках, если в них и так будет храниться идентификатор сессии залогиненного в игре юзера.

walik 12.02.2011 18:22

По моему самая обычная регистрация)) и пользователь вводит самый обычный пароль))

А насчет как авторизовать пользователя:
Или я не правильно понял, но можно и не в куках, а просто в сессии ?
Есть такой массив $_SESSION)) к нему по моему никак нельзя получить доступ если я не ошибаюсь.

dmitriymar 13.02.2011 11:34

Цитата:

Сообщение от walik
Есть такой массив $_SESSION)) к нему по моему никак нельзя получить доступ если я не ошибаюсь.

ты о какой стороне?

walik 13.02.2011 18:46

Цитата:

Сообщение от dmitriymar (Сообщение 92256)
ты о какой стороне?

На стороне сервера

dmitriymar 15.02.2011 16:49

walik,
странно,а как тогда все к нему получают доступ?и работают с сессиями?

walik 15.02.2011 22:57

Цитата:

странно,а как тогда все к нему получают доступ?и работают с сессиями?
С помощью массива $_SESSION[]

Сессии и Кукисы

dmitriymar 15.02.2011 23:14

Цитата:

Сообщение от walik
Есть такой массив $_SESSION)) к нему по моему никак нельзя получить доступ если я не ошибаюсь.

.........
С помощью массива $_SESSION[]-ответ заставляет задуматься. на вопрос а как же к массиву $_SESSION все получают доступ и работают с ним,следует ответ-С помощью массива $_SESSION[]....
алогизм полный..или с ним работают с помощью негоже,но доступ к нему получить нельзя?))


Часовой пояс GMT +3, время: 22:27.