Skip to content

Flarum

Официальное расширение CaptchaLa для Flarum. Добавляет проверку CAPTCHA к действиям, которые обычно атакуют боты на форуме — регистрация, вход, сброс пароля и постинг — с переключателями для каждого действия в админ-панели.

Что охватывает

Каждое действие ниже — отдельный переключатель в Admin → Extensions → CaptchaLa.

  • Регистрация
  • Вход
  • Сброс пароля
  • Ответы в темах
  • Новые обсуждения
  • Редактирование профиля

Аутентифицированные сессии, открытые через провайдер SSO / Auth Sync, исключаются — см. SSO / Auth Sync ниже.

Установка

1. Подключите расширение

Из корня вашей установки Flarum:

bash
composer require captchala/flarum

Альтернативно, в Admin → Extension Manager вставьте captchala/flarum в поле Install. Расширение рассчитано на Flarum ≥ 1.8 и PHP ≥ 8.1.

2. Включите в админ-панели

Откройте Admin → Extensions, найдите CaptchaLa и нажмите Enable.

3. Настройте

В панели настроек расширения:

  1. Вставьте ваш App Key и App Secret с dash.captcha.la.
  2. Включите действия, которые хотите защитить.
  3. Сохраните.

Конфигурация

Настройки хранятся в стандартной таблице настроек Flarum под префиксом captchala.*.

НастройкаТипПо умолчаниюОписание
App KeystringПубличный ключ (cl_pub_…) из панели управления CaptchaLa. Обязательно.
App SecretstringСерверный секрет. Обязательно. Используется только на сервере для вызова /v1/validate.
Защита регистрацииbooltrueЗапрос при регистрации.
Защита входаboolfalseЗапрос в модальном окне входа. Выключено по умолчанию, так как большинство форумов защищают вход через rate limiting.
Защита сброса пароляbooltrueЗапрос при запросе письма для сброса пароля.
Защита ответовboolfalseЗапрос при отправке ответа. Выключено по умолчанию; включите, если форум подвергается спам-атакам.
Защита новых обсужденийboolfalseЗапрос при открытии обсуждения.
Режим проверкиenumpopupОдин из popup, bind, embed. Соответствует опции product Web SDK.
Темаenumautolight, dark или auto.
Пропускать доверенных пользователейbooltrueПользователи в группах, отмеченных как доверенные (например, модераторы), обходят запрос.

SSO / Auth Sync

Расширение взаимодействует со стандартными hook-ами провайдеров аутентификации Flarum (UserAuthenticated, сторонние провайдеры Auth Sync, OAuth-мосты).

  • Если пользователь приходит через аутентифицированную SSO-сессию, запрос не отображается — расширение считает сессию уже подтверждённой.
  • Для смешанных конфигураций, где одни пользователи входят через SSO, а другие через локальную форму, запрос запускается только на пути локальной формы.
  • Переключатель skip_for_trusted_users накладывается сверху: доверенные группы обходят запрос даже при входе через локальную форму.

FAQ

Расширение бесплатное?

Да. Composer-пакет бесплатный. Бесплатный план CaptchaLa покрывает 1 000 проверок в месяц.

Останавливает ли спам-регистрации?

Блокирует или ставит запрос на большинство автоматических регистраций при первом же risk score. Никакая CAPTCHA не блокирует 100% — но в наших тестовых форумах объём спам-регистраций падает примерно на порядок после включения.

Можно ли использовать только на регистрации?

Да. Каждое действие — отдельный переключатель. Профиль по умолчанию включает только регистрацию и сброс пароля.

Работает ли с SSO / Auth Sync?

Да. Сессии, открытые провайдером SSO / Auth Sync, пропускают запрос. См. SSO / Auth Sync.

Открытый ли исходный код?

Да — PHP-код расширения с открытым исходным кодом. Вызовы проверки идут к хостингу сервиса CaptchaLa.

Исходный код

MIT-licensed examples · CaptchaLa is operated independently