имеется авторизация по номеру телефона. Как можно ограничить количество запросов на отправку СМС для гостя?
Из того, что приходит в голову - давать каждому пользователю токен при входу, и записывать все попытки от любого из пользователей в базу. Но, можно ли как-либо обойтись без создания отдельной таблицы для данного случая?
И ещё, при отправке смс, создаётся новая запись с полями Phone & Code. Возможно здесь можно добавить ещё и третий параметр, который будет определять кто именно сделал данный запрос?
REDIS тебе в помощь ;)
Мне кажется проще это как-то на клиенте регламентировать. Тогда конечно хакнуть можно систему всегда, но это уже другой вопрос
https://www.npmjs.com/package/express-rate-limit
Это уже сделал, хочу сделать доп. защиту для апи
Гляну, спасибо
Конечно если у вас express
Ништяк! То, что надо Спасибо
Лучше всё-таки через сессии делать, имхо. IP тут плохой идентификатор пользователя
Два пользователя могут через одну сеть сидеть? Про этот случай?
ну да, многие провайдеры серые ip дают пользователям...
Могут два пользователя. Может посёлок городского типа. А один пользователь может часто менять IP, например, в мобильных сетях при передвижении по городу. Хотя, если у вас ограничение на минуту, вряд ли он будет менять)
Ты же понимаешь что IP легко меняется и с ним обходится этот пакет?
Ага, ребята подсказали. В итоге реализовал через сессии
Это, если что, обходится даже проще
Понимаю. По крайней мере ребята с одной сети не будут считаться за одного гостя
Зачем тогда вообще лимит ставить?
Хороший вопрос 😂😂
Значит стопроцентно нельзя защитить роут?
Никак
Не пускать туда гостей
Так это авторизация)
на страница авторизации?
Никак не защититься полноценно. Всегда можно имитировать новую личность, менять IP, менять фингерпринт. Капчу тоже можно обходить как руками, так и "автоматически".
Обсуждают сегодня