![]() |
Модераторы: skyboy, MoLeX, Aliance, ksnk |
![]() ![]() ![]() |
|
Win MK 32 |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 492 Регистрация: 15.7.2002 Репутация: нет Всего: нет |
Как лучше сделать? Меняется ли с каждым годом технология? Все руководства, найденные в гугле, устарели.
|
|||
|
||||
Aliance |
|
|||
![]() I ♥ <script> ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 6418 Регистрация: 2.8.2004 Где: spb Репутация: 14 Всего: 137 |
Создается хранилище пользовательских данных. Там - id, login, hash, salt.
При регистрации генерируется случайная соль, с ее помощью хешируется введенный пароль. Все эти данные записываются в хранилище. При авторизации проверяются на равенство введенный пароль, хешированный по такому же алгоритму с солью из БД и собственно сам хеш. Если все окей - пишем ид пользователя и хеш пароля или просто токен-сессию в куки. |
|||
|
||||
baldina |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3433 Регистрация: 5.12.2007 Где: Москва Репутация: 26 Всего: 101 |
||||
|
||||
Win MK 32 |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 492 Регистрация: 15.7.2002 Репутация: нет Всего: нет |
1. Датируются руководства 1999-2005 годами, короче 10+ лет назад 2. Мой склад психики такой, что я крайностями воспринимаю все... (врожденно) Добавлено через 1 минуту и 49 секунд Aliance, если все так просто. Тогда почему я лет 7 назад читал, что типа IPB форум развивается к примеру, и все равно все новые и новые способы взлома (причем массового) и новые и новые заплатки. Самописная рукопись(движок) ведь еще хуже будет? :( Это сообщение отредактировал(а) Win MK 32 - 10.6.2014, 09:44 |
|||
|
||||
baldina |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3433 Регистрация: 5.12.2007 Где: Москва Репутация: 26 Всего: 101 |
IBP тоже не богами писана это не взлом аутентификации. в основном sql инъекции, обход системы аутентификации, ошибки в настройках сайта etc посмотри на какую-нить современную реализацию, напр. Zend\Authentication ничего принципиально нового по сравнению с тем, что написал Aliance. только этого мало, еще надо грамотно применить: обеспечить правильный доступ к хранилищу, недоступность файлов проекта и т.д. в фреймворках это обеспечивается слоем доступа к БД/LDAP, продуманной файловой структурой и пр. т.е. мало поставить хорошие ворота, надо обеспечить периметр безопасности своего проекта |
|||
|
||||
zero50x |
|
|||
Новичок Профиль Группа: Участник Сообщений: 37 Регистрация: 13.4.2007 Где: Нижний Новгород Репутация: нет Всего: 0 |
Если вам на процедурном php надо тогда и 10-летней давности смело можете брать, если на ООП тогда да ищите под версию от 5.0
|
|||
|
||||
Win MK 32 |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 492 Регистрация: 15.7.2002 Репутация: нет Всего: нет |
Как-то я запутался(((
По идее же хорошо бы еще проверять есть ли уже пользователь с таким емейлом/ником. Делать ссылку активации по почте и механизм срабатывания перехода по ней. Делать механизм восстановления пароля. А я не знаю как. Руки опускаются( |
|||
|
||||
Aliance |
|
||||
![]() I ♥ <script> ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 6418 Регистрация: 2.8.2004 Где: spb Репутация: 14 Всего: 137 |
Это все перделки-свистелки, сам механизм будет работать и без них. А их можно накручивать потом сверху.
Здесь-то чего сложного? Берем логин, перед самим созданием пользователя проверяем наличие такого аккаунта в хранилище. если есть - выводим ошибку. Что тут конкретного-то не понятно?
Тут уже больший полет фантазии. Например, можно генерировать токен от логина, чтобы был более-менее уникальным. Пишем после генерации этот токен в бд и шлем на почту. Так же пишем время генерации токена. При заходе на ссылку - проверяем токен и смотрим, чтобы он не протух (времени прошло не сильно много), если все окей - делаем апдейт поля статус в хранилище. сложный вариант: вводим логин и капчу, шлется на мыло ссылка с неким сгенерированным токеном, как по принципу выше, и при заходе на это ссылку - предлагаем пользователю сменить пароль/генерируем ему сами новый. |
||||
|
|||||
![]() ![]() ![]() |
Правила форума "PHP" | |
|
Новичкам:
Важно:
Внимание:
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | PHP: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |