Как сделать небольшой токен для сброса пароля в asp.net web api? - PullRequest
0 голосов
/ 16 мая 2019

Я отправлял токен сброса пароля в электронном письме пользователя с методом по умолчанию GeneratePasswordResetToken, но он был довольно большим, длиной от 200 до 300 символов. Я хочу сделать токены меньшего размера, например, 5/6 цифр, и срок их службы истекает через 3 минуты. Как я могу это сделать?

1 Ответ

0 голосов
/ 17 мая 2019

Один из способов будет выглядеть так:

В вашей базе данных есть таблица, в которой вы сохраняете токены сброса и дату их создания.

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

Когда пользователь щелкает ссылку, вы проверяете, что токен еще не истек, а если нет, то позволяют ему сменить пароль.

После того, как пароль был изменен, либо пометьте токен как уже использованный, либо просто удалите его из таблицы.

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

НЕ используйте последовательные или короткие слова (5, 6 символов), так как их легко угадать / грубая сила.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...