Привет, Гость!
Главная
Вход

Последняя активность

Форум / JohnCMS / Другое...
Поиск
  Логика авторизации JohnCMS
1 2 3 ... 10 >>
PaRtiZzaN PaRtiZzaN [Off] [#] (23.12.2016 / 16:40)
¯\_(ツ)_/¯
Доброго времени суток Ждоновцы


Объясните кому не лень для меня логику авторизации, зачем пишется ид с паролем и в сессию и в куки?
ФкедаХ ФкедаХ [Off] [#] (23.12.2016 / 16:42)
ஜ۩۞۩ ФкедaХ ۩۞۩ஜ
# PaRtiZzaN (23.12.2016 / 16:40)
Доброго времени суток Ждоновцы


Объясните кому не лень для меня логику авторизации, зачем пишется ид с паролем и в сессию и в куки?
Чтобы их можно было скамуниздить
Koenig Koenig (Adm) [Off] [#] (23.12.2016 / 17:26)
(\/)____o_O____(\/)
чтоб держать сессию открытой до нажатия кнопки выход. то есть если сессия вылетела, она востановится
ramzes ramzes [Off] [#] (23.12.2016 / 17:31)
# Koenig (23.12.2016 / 17:26)
чтоб держать сессию открытой до нажатия кнопки выход. то есть если сессия вылетела, она востановится
как то ты ппц обьяснил))
для идентификации пользователя в куках хранят его пароль и ид, иначе как узнать что это он, не заставляя его каждый раз вводить данные в форме авторизации?
Delphinum Delphinum [Off] [#] (23.12.2016 / 17:37)
юзерам не надо знать хеш своего пароля, да и id им ни к чему.
ramzes ramzes [Off] [#] (23.12.2016 / 17:42)
# Delphinum (23.12.2016 / 17:37)
юзерам не надо знать хеш своего пароля, да и id им ни к чему.
ну это уже ньюансы реализации) там может быть токен вместо ид и пароля, или еще что то
Delphinum Delphinum [Off] [#] (23.12.2016 / 17:43)
ramzes, ну ведь нюансы реализации могут быть ошибочны ) вот я и намекаю
ramzes ramzes [Off] [#] (23.12.2016 / 17:48)
Delphinum, идентификация по 1 ключу в любом случае менее надежна чем по двум, тут как не крути. особенно если обе строки публично недоступны (т.е. не ид который обычно легко узнать)
Delphinum Delphinum [Off] [#] (23.12.2016 / 17:50)
ramzes, не согласен. Если кто либо получить id сессии, то не важно, есть в сессии один только ид юзера или еще и пароль, доступ откроется.
AlkatraZ AlkatraZ (SV!) [Off] [#] (23.12.2016 / 19:41)
╭∩╮ (`-`) ╭∩╮
На данный момент в JohnCMS система авторизации сильно устаревшая и нет смысла ее рассматривать.

По хорошему счету, логика авторизации (на примере MobiCMS) такова:

1) Клиент заходит на форму входа, вводит свой логин и пароль.
2) В базе данных ищется запись с введенным логином.
3) Если запись найдена, то хэш введенного в форму пароля, сверяется с имеющимся в базе (хэширование с солью). Далее пароль НИГДЕ не используется.
4) Если пароль совпадает, клиент считается авторизованным, ему генерируется временный токен (хэш строки из набора случайных символов и цифр).
5) Сгенерированный токен записывается в куки, сессию и специальную таблицу.

При повторном входе на сайт (если сессия уже протухла), токен из куков ищется в вышеуказанной таблице. Если токен есть и его время действия не прошло, клиент считается авторизованным.

Так, как токен генерируется от балды и не имеет никакого отношения к логину и паролю, вычислить какие-то данные по нему невозможно.

При желании, можно включать дополнительную защиту в виде привязки по IP (адрес тоже пишется вместе с токеном в вышеуказанную таблицу).

По запросу в таблицу легко вычислить все активные сессии на данного пользователя и разлогинить по выбору любые из них. К примеру, был у кореша дома, залогинился на своем сайте и забыл потом разлогиниться. Куки и авторизация остались. Придя домой и зайдя в свой экаунт, легко удалить ненужные токены, тем самым аннулировав все левые авторизации.
Изм. AlkatraZ (23.12.2016 / 19:42) [2]
PaRtiZzaN PaRtiZzaN [Off] [#] (23.12.2016 / 19:43)
¯\_(ツ)_/¯
AlkatraZ, Ну это лучше чем было
Delphinum Delphinum [Off] [#] (23.12.2016 / 19:52)
А зачем токен и куки, если есть ид юзера и сессия?
AlkatraZ AlkatraZ (SV!) [Off] [#] (23.12.2016 / 19:52)
╭∩╮ (`-`) ╭∩╮
# PaRtiZzaN (23.12.2016 / 19:43)
AlkatraZ, Ну это лучше чем было
Это не просто "лучше", а для однофакторной (классической) авторизации - наилучший вариант.
AlkatraZ AlkatraZ (SV!) [Off] [#] (23.12.2016 / 19:53)
╭∩╮ (`-`) ╭∩╮
# Delphinum (23.12.2016 / 19:52)
А зачем токен и куки, если есть ид юзера и сессия?
Сессия протухнет и что тогда?
А ID юзера нам не нужен, токен однозначно определяет юзера
Delphinum Delphinum [Off] [#] (23.12.2016 / 19:54)
Как сессия протухнет, так и авторизация закончится.
Ид юзера тоже однозначно его идентифицирует, зачем еще один однозначный токен? )
AlkatraZ AlkatraZ (SV!) [Off] [#] (23.12.2016 / 20:02)
╭∩╮ (`-`) ╭∩╮
# Delphinum (23.12.2016 / 19:54)
Как сессия протухнет, так и авторизация закончится.
Ид юзера тоже однозначно его идентифицирует, зачем еще один однозначный токен? )
А вот это не надо, особенно для мобильной сферы.
По-умолчанию в РНР время жизни сессии то ли час, то ли не помню. Каждый день вводить авторизацию - замучаешься.

А так, ты сам можешь устанавливать (как на некоторых форумах) на сколько тебя запомнить, включая "навсегда". То есть, пока живы куки и пока ты не разлогинился, сможешь спокойно заходить. Это удобство для клиента.
Изм. AlkatraZ (23.12.2016 / 20:07) [1]
Delphinum Delphinum [Off] [#] (23.12.2016 / 20:06)
Альк, у нас клиенты хоть на всю жизнь могут в авторизованных ходить. Все так же определяется временем жизни кукисов (в нашем случае редиса).
AlkatraZ AlkatraZ (SV!) [Off] [#] (23.12.2016 / 20:08)
╭∩╮ (`-`) ╭∩╮
# Delphinum (23.12.2016 / 20:06)
Альк, у нас клиенты хоть на всю жизнь могут в авторизованных ходить. Все так же определяется временем жизни кукисов
Да не имеет значения.
Хэш сессии - это тот же самый хэш, что я генерирую. Просто я не насилую сессии, а использую отдельную таблицу для токенов.
Delphinum Delphinum [Off] [#] (23.12.2016 / 20:11)
AlkatraZ, в том то и соль, что при наличии аналога ты зачем то генеришь свой SSID. Не велосипедь )
ramzes ramzes [Off] [#] (24.12.2016 / 05:06)
# Delphinum (23.12.2016 / 19:54)
Как сессия протухнет, так и авторизация закончится.
Ид юзера тоже однозначно его идентифицирует, зачем еще один однозначный токен? )
И что? Вводить пароль опять? Это худший из вариантов
  Всего: 185
1 2 3 ... 10 >>

Фильтр по автору
Скачать тему

Форум

Новые вверху
Главная
0 / 38

JohnCMS 7.1.0

Яндекс.Метрика
© JohnCMS