Навигация keyboard_arrow_down

Блог Rss rss_feed

Эффективные Методы Противодействия Фейковым Регистрациям на CMS PrestaShop

Эффективные Методы Противодействия Фейковым Регистрациям на CMS PrestaShop

Привет всем! В этой статье мы обсудим постоянные регистрации ботов и методы их борьбы.

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

Для начала нам нужно понять паттерны, по которым происходят регистрации фиктивных аккаунтов. Я выявил две основные закономерности:

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

  2. Иногда регистрация проходит с одинаковыми именем и фамилией, что нехарактерно для обычных пользователей.

Давайте начнем писать наши улучшения для борьбы с ботами. В первую очередь, нам нужно добавить проверку на наличие трех или более заглавных букв в имени и фамилии. Для этого мы будем использовать класс Validate.php и метод isCustomerName. Этот метод отвечает за проверку имени и фамилии. Мы переопределим его в файле override/classes/Validate.php и заменим его новым.

Эффективные Методы Противодействия Фейковым Регистрациям на CMS PrestaShop

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

Далее нам нужно определить схожесть имени и фамилии. Сначала мы создадим модуль, чтобы иметь возможность управлять и отлавливать момент регистрации бота или пользователя. Модуль можно сгенерировать здесь и установить.

В методе install() модуля добавим крючок $this->registerHook('actionSubmitAccountBefore') и перезагрузим модуль, чтобы зарегистрировать наш крючок.

Остается определить метод в классе модуля и выполнить сравнение имени и фамилии. Если они одинаковы, мы выведем ошибку и не позволим пользователю или боту завершить регистрацию.

Это все. Если вы хотите, чтобы я сделал это за вас на вашем сайте, напишите в чате или используйте другой удобный способ связи.

Оставьте комментарий, удалось ли вам это сделать или нет.

Был ли этот пост полезен для вас?

    
На данный момент комментариев нет
close

Checkout

close

Избранное