====== Измененный алгоритм восстановления пароля ====== Алгоритм, при котором пароль изменяет сам пользователь. Сначала на почту отправляется письмо со ссылкой, содержащей токен. При переходе по ссылке, попадаем на страницу изменения пароля, на которой есть 2 поля ввода для пароля. При корректном вводе пароль изменяется. ===== Требования к токену ===== * Нечитабельный * Содержать прошлый пароль для проверки попытки повторной смены * Содержать зашифрованный email юзера * Действовать ограниченное время Формируем следующим образом: base64(email) + key + md5(date('dmY')) + password Получая такой токен мы сможем изъять email с помощью обрезки строки до ключа и применения base64_decode. Затем получив пользователя по email мы сможем составить остаток токена для сверки. Если не совпадет пишем "Пароль уже был изменен или истекло время действия токена". ===== Файлы ===== * [[private:koding:hostcms:modules:siteuser:izmenennyj_algoritm_vosstanovlenija_parolja:tds|ТДС восстановления пароля]] * [[private:koding:hostcms:modules:siteuser:izmenennyj_algoritm_vosstanovlenija_parolja:xsl|XSL шаблон]] * [[private:koding:hostcms:modules:siteuser:izmenennyj_algoritm_vosstanovlenija_parolja:siteuser_controller_restore_password|Siteuser_Controller_Restore_Password]]