Ограничение скорости для предотвращения вредоносного поведения в ExpressJS

Кто-то сообщил мне о некоторых недостатки в приложении, над которым я работаю (в основном в моем JavaScript на интерфейсе), что оставляет открытой возможность, скажем, щелкнуть сразу тонну кнопок и отправить тонну транзакционных писем. Это явно нехорошо.

Я думаю, что один из способов справиться с этим в ExpressJS - использовать app.all () для подсчета количества запросов, которые происходят в течение определенного периода времени. Я бы сохранил это в метаданных сеанса с отметками времени, и если за время Y произойдет больше X запросов, я отключу их на некоторое время, пока не истечет лимит.

Кто-нибудь делал это раньше или есть какие-нибудь советы / подсказки, которые могут мне помочь? Предпочтительно то, что легко вставлять и вынимать из моего приложения. Спасибо!

8
задан Josh Smith 24 February 2012 в 02:12
поделиться