Дизайн экранов восстановления пароля
Сегодня я хотел бы поделится с вами решением простой, на первый взгляд, задачи: нарисовать экраны восстановления пароля. Хороший дизайнер перед проектированием посмотрит как подобную задачу уже решали до него.
Покопавшись в статьях пересмотрев множество вариантов я выбрал то флоу, которое мне подходит больше всего. А вам я покажу все варианты которые нашел.
Возможно, при входе пользователь еще не знает что забыл пароль, тогда у нас будет попытка авторизоваться.
Вариант событий 1
Пользователь вводит свой почтовый адрес и переходит к полю для ввода пароля. Тут мы, как заботливые дизайнеры ставим галочку напротив поля с почтой. Таким образом мы показали что аккаунт есть в системе и поле прошло валидацию.
Вариант событий 2
Пользователь вводит почтовый адрес, пароль и нажимает кнопку войти. Мы как заботливые дизайнеры, покажем что такой аккаунт не найден.
Оба варианта плохие. Они дают информацию злоумышленнику о наличии в системе данного аккаунта. Что само по себе может быть нежелательно. Ведь сервис, например, может носить компрометирующий характер. Также это увеличит вероятность взлома.
Выход: Самым простым решением, будет выдавать ошибку: «Почтовый адрес или пароль не верны». Да, мы не облегчаем таким образом жизнь пользователю. Теперь он не знает в каком месте ошибся, но тут нужно выбирать чем жертвовать, безопасностью или удобством.
Где же восстановление пароля?
После того как пользователь перебрал все варианты своих паролей. Проверил что не записал его в блокнот, он переходит к функции восстановления пароля. Тут нужно не забыть дать пользователю возможность вернуться назад, если вдруг в памяти всплыл еще один вариант пароля. Для удобства мы можем сразу подставить почту с прошлого шага.
Итак, пользователь ввел свои данные и нажал сбросить пароль. На этом шаге так же лучше не показывать информацию о наличии аккаунта в системе. Я ограничился сообщением что, если аккаунт существует то на почту придет письмо с инструкцией. Я для себя решил что кроме сообщения оставлю кнопку вернуться на главную. Понимаю, что пользователь скорее всего сразу пойдет на почту и будет ждать письмо со ссылкой. Еще вариант сделать автоматическую переадресацию на вход, делать пользователю там нечего, но и не оставлять выхода с экрана не хотелось.
Опишу нежелательные кейсы, которые используют некоторые сервисы, для восстановления пароля через почту
Присылать старый пароль пользователю на email.
Генерировать временный пароль (в некоторых случаях я встречал такие кейсы, но там хотя бы сразу была принудительная смена пароля при первой авторизации).
Оптимальным считается уникальная ссылка на сброс пароля.
Она должна быть одноразовой и становиться неактивной после смены пароля или авторизации пользователя.
Перейдя по ссылке пользователь должен попадать на экран ввода нового пароля.
Для себя я решил после ввода нового пароля сразу давать пользователю возможность авторизоваться, о чем написал на кнопке.
Еще вариант, после смены пароля писать о том, что пароль успешно изменен. И делать переадресацию на экран входа, где почта уже будет авто заполнена, но пароль нужно будет ввести еще раз.
Что мы не разбирали и о чем стоит подумать:
Сколько раз пользователь может ошибаться при вводе пароля на экране входа?
Давать ли возможность пользователю использовать старый пароль на этапе придумывания нового? Или пароль, который когда-то был в системе, некоторые сервисы не дают вводить пароли если они немного похожи на старые.
Просить создавать сложные пароли? И пропускать ли простые пароли вроде password123?
Что делать если у пользователя нет больше доступа к почте?
Использовать контрольные вопросы при восстановлении пароля?
Тут замечу, что многие не рекомендуют использование контрольных вопросов на подобии назовите имя вашего питомца, такую информацию легко получить из социальных сетей.Есть ли возможность сделать регистрацию через социальные сети или телефон?
Ведь это решает проблему запоминания большого количества паролей, и снимет необходимость наличия флоу с восстановлением пароля.Ряд сервисов заставляет менять пароль раз в пол года, нужно ли это для вашего флоу?
Всем большое спасибо за внимание. Надеюсь вы нашли для себя что-то полезное.
Комментарии
Войдите, чтобы оставить комментарий.