Skip to main content

Що таке rate limiting?

Rate limiting - це механізм захисту, який обмежує кількість запитів, які користувач, IP-адреса чи застосунок можуть надіслати за певний проміжок часу.

Простіше кажучи: rate limiting не дає одному джерелу «занадто часто» звертатися до сервісу.


Навіщо потрібен rate limiting

Без обмежень:

  • сервіс легко перевантажити;
  • можливі brute force і DDoS-атаки;
  • зловмисник може «заспамити» API чи форму входу.

Rate limiting потрібен, щоб:

  • захистити сервіс від перевантаження;
  • знизити ризик атак;
  • забезпечити стабільну роботу для всіх користувачів.

Як працює rate limiting

Система рахує запити від джерела (наприклад, IP) і застосовує правило, наприклад:

  • не більше 100 запитів за хвилину;
  • не більше 5 спроб входу за 10 хвилин.

Якщо ліміт перевищено:

  • запити тимчасово блокуються;
  • повертається помилка (наприклад, HTTP 429);
  • іноді вводиться затримка.

Ліміти можуть застосовуватися до:

  • IP-адреси;
  • користувача;
  • API-ключа;
  • сесії.

Де використовується rate limiting

  • вебсайти;
  • API;
  • форми логіну;
  • сервіси авторизації;
  • захист від L7 DDoS.

Які атаки допомагає запобігти

Rate limiting ефективно захищає від:

  • brute force (підбір паролів);
  • credential stuffing;
  • HTTP flood;
  • зловживань API.

Це один із базових, але дуже важливих заходів захисту L7.


Види rate limiting (спрощено)

  • Жорсткий ліміт - після перевищення запити блокуються
  • М'який ліміт - запити сповільнюються
  • Адаптивний - ліміти змінюються залежно від поведінки

Обмеження rate limiting

Важливо розуміти:

  • сам по собі не зупинить великий DDoS;
  • вимагає правильного налаштування лімітів;
  • може заважати легітимним користувачам при помилках конфігурації.

Зазвичай використовується разом із firewall, WAF та анти-DDoS.

Коротка відповідь

Для співбесіди
Premium

Коротка відповідь допоможе вам впевнено відповідати на цю тему під час співбесіди.