Пользовательские правила
Пользовательские правила — инструмент, с помощью которого вы можете гибко настроить защиту под свои нужды. Доступны четыре группы правил:
Они дополняют друг друга и позволяют настроить разные аспекты защиты.
Сравнение групп правил
| Группа правил | Что позволяет настроить | Пример правила | Может блокировать трафик | Когда использовать |
|---|---|---|---|---|
Частоту обращений: сколько запросов один IP может отправить к указанному URI за заданное время. Если IP превысил лимит, система на время блокирует его. |
Лимит 10 запросов к |
Да, при превышении лимита |
Уберечь эндпоинты от перегрузки Защититься от эксплуатации бизнес-логики |
|
Реакцию системы: что сделать с запросом, который соответствует условиям правила: пропустить его, заблокировать, выдать JS-челлендж, выдать cookie-челлендж или выдать CAPTCHA |
Если к
|
Да, если вы указали действие «заблокировать» |
Задать реакцию системы защиты для конкретного сценария |
|
Дополнительную проверку пользователя: указанному трафику система выдаст дополнительный JS-челлендж и рассчитает bot score пользователя. |
Если пользователь отправил запрос к |
Нет* |
Увеличить точность фильтрации для конкретных сценариев |
|
Жёсткость фильтрации: каков для указанного трафика порог bot score — минимальное значение bot score, набрав которое источник запроса попадает в категорию «бот». |
Если пользователь обращается к |
Нет* |
Задать жёсткость фильтрации для разных типов трафика |
|
*«Сбор JS score» и «Классификация ботов» сами не блокируют трафик, но косвенно влияют на блокировку. Если bot score источника достиг порогового значения или превысил его, такой источник считается ботом, а в режиме защиты «Антибот» система по умолчанию блокирует запросы от ботов.
|
||||
Как группы правил работают вместе
Предположим, у вас есть страница /reports/generate, где пользователи формируют сложные отчёты. Эта операция требует много вычислительных ресурсов. Вы хотите защититься от:
-
людей, которые отправляют аномально много запросов и рискуют перегрузить вашу систему;
-
ботов, которые парсят информацию.
Вы настраиваете такие правила:
-
Лимиты запросов: не больше 10 запросов за 5 минут с одного IP к
/reports/generate. При превышении блокировка на 5 минут. -
Сбор JS score: собирать bot score на странице
/reports/generate. -
Классификация ботов: для
/reports/generateпорог bot score — 0.4. -
Правила защиты: при обращении к
/reports/generateзапросы от людей пропускать, а на запросы ботов в ответ выдавать CAPTCHA.
Когда придёт запрос к /reports/generate, защита будет работать так:
-
Проверит, отправлял ли этот IP раньше запросы на отчёты. Если он превысил лимит 10 запросов за 5 минут, то будет заблокирован. Если нет, его запрос будет допущен на следующий шаг фильтрации.
-
В ответ на запрос выдаст JS-челлендж. Если пользователь не сможет его пройти, то будет считаться ботом. Его сможет, система рассчитает его bot score.
Исключение: если пользователь недавно уже проходил такой челлендж, система рассчитала и запомнила его bot score. Проходить челлендж снова не придётся. -
Если bot score пользователя 0–0.3, система пометит его как человека, если 0.4 и выше — как бота.
-
Запросы от людей будут пропущены на ваши серверы, а боты в ответ на свой запрос получат CAPTCHA.
-
Если пользователь получил CAPTCHA, его запрос будет пропущен, только если он успешно пройдёт тест и совокупность признаков (поведение при прохождении, данные клиентского окружения и другие) будет указывать, что капчу решал человек.
Результат: боты заблокированы, а люди могут свободно формировать отчёты — при условии, что не присылают запросы слишком часто.
Где находятся пользовательские правила в UI
Перейдите в раздел Защита приложений → Ресурсы.
Найдите ресурс, для которого нужно настроить правила, нажмите на три точки (…) в конце строки и выберите Пользовательские правила.
Внутри раздела выберите вкладку с нужной группой правил.
| Некоторые группы правил подключаются по запросу. Если какие-то вкладки неактивны, напишите в поддержку — откроем их для вас. |