WebFlux + R2DBC: как предотвратить DDoS-атаку приложения вредоносным REST-клиентом посредством медленного потребления отJAVA

Программисты JAVA общаются здесь
Anonymous
WebFlux + R2DBC: как предотвратить DDoS-атаку приложения вредоносным REST-клиентом посредством медленного потребления от

Сообщение Anonymous »

Я оцениваю стек Spring WebFlux + R2DBC для нашего следующего проекта. Рассмотрим этот учебный код для потоковой передачи ответов REST:

Код: Выделить всё

@GetMapping("items")
public Flux findAll() {
return repository.findAll();
}
Репозиторий выполняет запрос к базе данных с помощью jOOQ, но я не думаю, что эта деталь имеет отношение к вопросу. Меня беспокоит, как предотвратить бесконечное удержание соединения с базой данных клиентом REST, медленно используя ответ REST или полностью отключая сетевое соединение.
Если в моем пуле подключений к базе данных 20 подключений , злоумышленник может выполнить 20 одновременных вызовов REST, а затем немедленно отключиться. Это приведет к тому, что мое приложение перестанет отвечать. Что еще хуже, он будет не отвечать на неопределенный срок, потому что, насколько я могу судить, Spring 6 WebFlux не настраивает тайм-ауты HTTP-ответа или чтения/записи сокета по умолчанию, и, похоже, нет доступной опции конфигурации для установки этих таймаутов.
Очевидно, я что-то упускаю или неправильно понимаю, как это работает. Может ли кто-нибудь объяснить, как снизить этот риск?

Подробнее здесь: https://stackoverflow.com/questions/790 ... he-app-via

Вернуться в «JAVA»