Я настраиваю сервер node.js и задаюсь вопросом, каковы наилучшие методы управления безопасностью на маршруте сброса пароля.
Я сейчас использую веб-токены json для безопасности, но я боюсь, что если кто-нибудь получит jwt, они могут использовать этот маршрут для изменения пароля другого пользователя. Теоретически HTTPS должен предотвращать подобные атаки, верно? Но я просто хотел проверить, есть ли уязвимость.
app.patch('/users/password', authenticate, (req, res) => {
let {password} = req.body;
req.user.password = password;
req.user.save()
.then(user => {
res.send({user});
})
.catch(e => {
res.status(400).send();
});
});
Функция save()
хеширует пароль перед его сохранением.