Необходимо доработать API сделанное на modx, добавить блокировку по IP при частых запросах.
Добрый день.
Отвечать буду только людям с рейтингом на modx.
Описание
Есть мобильное приложение. В данный момент ошибочно (спам) было разослано более 50.000 смсок с приложения на различные номера телефонов.
Задачи
№1) Ограничения по IP backend
Первые 3 запроса с одного IP — раз в минуту.
После этого — раз в час.
И после 3-х в час — блокировка на день.
Нужно будет обновить UI, чтобы показывать ошибку 429 (слишком много запросов) и объяснять пользователю, что нужно подождать перед следующей попыткой.
№2) Ограничения по телефону — То же самое, только по номеру телефона.
В UI тоже нужно показывать ошибку 429, чтобы пользователи понимали, что нужно подождать.
Отвечать буду только людям с рейтингом на modx.
Описание
Есть мобильное приложение. В данный момент ошибочно (спам) было разослано более 50.000 смсок с приложения на различные номера телефонов.
Задачи
№1) Ограничения по IP backend
Первые 3 запроса с одного IP — раз в минуту.
После этого — раз в час.
И после 3-х в час — блокировка на день.
Нужно будет обновить UI, чтобы показывать ошибку 429 (слишком много запросов) и объяснять пользователю, что нужно подождать перед следующей попыткой.
№2) Ограничения по телефону — То же самое, только по номеру телефона.
В UI тоже нужно показывать ошибку 429, чтобы пользователи понимали, что нужно подождать.
Комментарии: 3
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
Для регулирования частоты запросов к API в PHP можно использовать библиотеку php-ratelimiter или symfony/rate-limiter. Оба инструмента предоставляют удобные способы контроля и ограничения количества запросов за определённый промежуток времени.
К примеру вот так используется php-ratelimiter