Формы. Использование Google Recaptcha в формах

Google Recaptcha v3 позволяет прозрачно, без ручных проверок проверять пользователя на бота.

Как настроить рекапчу

Для использования Google Recaptcha необходимо выполнить следующее: 

1. Получить секретный и публичный ключи на сервисе Рекапчи (v3): https://www.google.com/recaptcha/intro/v3.html 

2. Добавляем ключи в настройки (as_settings) с кодами recaptchaPrivateKey, recaptchaPublicKey

3. В GetLayout Select 1 добавляем параметр recaptchaPublicKey:  dbo.as_setting('recaptchaPublicKey', '') recaptchaPublicKey

4. У формы в GetItem SELECT 2 поставить 1 EnableRecaptcha

5. В итоге при сохрании формы будет проводиться прозрачная проверка с обращением к внешнему сервису Google Recaptcha. 

Отключение рекапчи

  • Если необходимо у конкретной формы отключить рекапчу используйте 0 EnableRecaptcha в GetItem SELECT 2 для формы. 
  • Для полного отключения рекапчи на сайте достаточно сделать пустым параметр recaptchaPublicKey в GetLayout SELECT 1, а также очистить настройки recaptchaPublicKey  и recaptchaPrivateKey. 

Внутренние детали рекапчи

  • В поле input[type=hidden]#as-g-recaptcha хранится значение токена пользователя (оно переиницализируется при каждом сохрании поля). 
  • Проверка на бота происходит в форме перед вызовом процедуры CheckItem. 
  • Вы можете изменить сообщение о блокировке от Google - для этого необходимо указать значение в Lang метке с кодом invalidRecaptcha (part пустой).
  • token передается в форму через дополнительный параметр с кодом recaptchaToken в коллекции полей. После проверки он сразу удаляется из коллекции. 
  • если запускать приложение локально, то рекапча будет отключена и hidden поле не добавляется на страницу.

Falcon Space - функциальная веб-платформа разработки на узком стеке MS SQL/Bootstrap. Вводная по Falcon Space
Насколько полезной была статья?

Google поиск по нашей документации

Falcon Space

Это снижение стоимости владения

за счет меньшего количества людей для поддержки и узкого стека разработки. Про снижение стоимости владения продуктом

Это быстрое внесение изменений

по ходу эксплуатации программы. Как создается функционал на платформе

Это простой удобный интерфейс

адаптация под мобильные устройства. Про юзабилити платформы