Просмотров: 20052 (Статистика ведётся с 06.02.2017)
Дата последнего изменения: 13.07.2018

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 в параметрах компонента
  • Подключение 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.

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

    Документация по теме:


    55


    Курсы разработаны в компании «1С-Битрикс»