Перейти к содержимому

POST /api/auth/password-reset/confirm — Подтверждение сброса пароля

Сгенерировано из матриц + кода. Правки вносить в источники (docs/matrices/, server/routes/), не здесь.

ПолеЗначение
HTTPPOST /api/auth/password-reset/confirm
Auth
Scope токенаread_write
PG-функции
Таблицы
SRM— (вне SRM, документировано по коду)
RP (права)
Файл роутаserver/routes/notifications.js
Статуспо коду (вне SRM)

Аргументы запроса (best-effort из хендлера; путь-параметры опущены):

АргументГдеОбяз.Заметка
new_passwordbodyподтвердить
tokenbodyподтвердить

Коды ответов/ошибок (из хендлера): 400, 500 (+ 200) — уточнить причины вручную

Для человека

Как открыть: задумано как экран «придумайте новый пароль», на который пользователь попадает по ссылке из письма (после запроса сброса). Полный путь через интерфейс пока не выведен (FM-082 — «todo»), серверная часть уже работает.

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

Что проверяется и какие ошибки можно увидеть (все — 400):

  • токена нет в системе — «Недействительный токен»;
  • токен уже применяли — «Токен уже использован»;
  • прошёл час — «Токен истёк»;
  • новый пароль короче 8 символов — отклоняется.

При успехе пароль меняется, токен гасится, и все активные сессии аккаунта сбрасываются — после смены пароля придётся войти заново на всех устройствах. Это намеренная мера безопасности.

Кто может. Завершить сброс может любой, кроме администратора платформы (RP-093) — фактически тот, у кого на руках валидный токен из письма.

Для агента

Завершение сброса пароля — часть восстановления человеческого аккаунта; агент сюда не ходит. У токена пароля нет, восстанавливать нечего; при компрометации токен отзывается и выпускается заново (Создать токен). Учтите ещё, что успешный сброс удаляет все сессии пользователя — на токены это не влияет, они живут отдельно, но это лишний повод не путать токен с паролем.

Метод задокументирован для полноты. Тело запроса:

ПолеТипОбяз.Назначение
tokenstringдаОдноразовый токен восстановления из письма
new_passwordstringдаНовый пароль, не короче 8 символов

Успех — 200 { "ok": true }. Ошибки 400: недействительный, использованный или истёкший токен; короткий пароль; отсутствие обязательного поля. Markdown-зеркала и аффордансов у метода нет (server/agent/affordances.js).

Связанные