Как настроить капчу (код при заполнении обратной связи)?

SF2: Часто задаваемые вопросы
Как настроить капчу (код при заполнении обратной связи)?

Подробнее по ссылке: https://dev.1c-bitrix.ru/

Настройка CAPTCHA

Подключение CAPTCHA

CAPTCHA (от англ. "Completely Automated Public Turing test to tell Computers and Humans Apart" - "полностью автоматизированный публичный тест Тьюринга для различия компьютеров и людей") - компьютерный тест, используемый для того, чтобы определить, кем является пользователь системы: человеком или компьютером. Основная идея теста: предложить пользователю такую задачу, которую с лёгкостью может решить человек, но которую несоизмеримо сложнее решить компьютеру. В основном это задачи на распознавание символов.
Внимание! Для работы CAPTCHA на сервере должна быть установлена библиотека FreeType library и Библиотека GD (функции imagecreatetruecolor и imagejpeg). Проверить их наличие можно на странице Проверка системы.

Настройка CAPTCHA

Форма Настройка CAPTCHA (Настройки > Настройки продукта > CAPTCHA) предназначена для настройки защиты от автоматических регистраций.

В поле Профиль можно выбрать уже готовые настройки или же можно вручную задать параметры отображения CAPTCHA в последующих полях.

Примечание: Подробное описание полей формы смотрите на странице пользовательской документации CAPTCHA.

CAPTCHA необходимо настраивать так, чтобы исключить, по возможности, автоматическое распознавание. Рекомендуемые параметры:

  • Прозрачность текста в процентах - 40-50%,
  • угол отклонения от вертикали - от -30 до 30,
  • добавить нелинейные искажения,
  • шрифт лучше поменять на bitrix_captcha.ttf или какой-то другой не очень распространенный.

Чтобы при этом пользователи не сильно страдали, допустимые символы лучше ограничить только цифрами. Но в любом случае необходимо искать компромисс между защитой от спама и неудобством для посетителей.

Ниже даны примеры CAPTCHA, затрудняющие автоматическое распознавание:

Примечание: Возможна установка пользовательских шрифтов в папку /bitrix/modules/main/fonts/. Поддерживаются файлы шрифтов в формате *.ttf. Некоторые шрифты могут отображаться некорректно!

Подключение CAPTCHA

После настройки основных параметров необходимо подключить CAPTCHA. 

Существует несколько вариантов подключения:

Подключение CAPTCHA в настройках модуля

Для таких модулей, как Блоги, Wiki и.т.д., CAPTCHA подключается прямо в настройках модуля.

Рассмотрим пример использования CAPTCHA в настройках Главного модуля:

Опция Использовать CAPTCHA при регистрации позволяет включить использование CAPTCHA при регистрации новых пользователей.

Подключение CAPTCHA в параметрах компонента

CAPTCHA возможно подключить и для отдельных компонентов, например, Добавление элементов инфоблока (комплексный компонент), Каталог (комплексный компонент) и.т.д.

Рассмотрим пример использования CAPTCHA в компоненте Форма обратной связи:

Опция Использовать защиту от автоматических сообщений (CAPTCHA) для неавторизованных пользователей позволяет включить CAPTCHA только для данного компонента.

Примечание: Обычно настройки CAPTCHA в параметрах компонента используются для неавторизированных пользователей.

Подключение CAPTCHA в форме редактирования

В некоторых случаях использование CAPTCHA задается в форме создания/редактирования, например, Создание и редактирование блога, Создание и редактирование форума и.т.д.

Рассмотрим пример использования CAPTCHA в политике безопасности группы пользователей:

Опция Количество попыток ввода пароля до показа CAPTCHA позволяет задать количество неправильных попыток ввода пароля, после которых будет в форме авторизации выводиться CAPTCHA для пользователя из соответствующей группы.

Внимание! Если в шаблоне компонента не предусмотрен вывод CAPTCHA, то возможна ситуация, когда система (при малом значении в поле Количество попыток ввода пароля до показа CAPTCHA) как бы "забывает" пароль пользователя не давая ему авторизоваться в системе. При этом при входе в административную часть (ваш_сайт/bitrix/admin/) авторизация осуществляется.

Это происходит потому, что при последовательном неправильном наборе пары логин/пароль и при малом значении в поле Количество попыток ввода пароля до показа CAPTCHA) система ждёт ввода верного кода CAPTCHA. А пользователь этого не делает, так как шаблон не предусматривает вывод CAPTCHA.