Как интегрировать reCAPTCHA в Java-приложение на основе Spring boot?

#java #spring #spring-boot #recaptcha #invisible-recaptcha

Вопрос:

Мне нужно реализовать тихую (невидимую) рекапчу, чтобы предотвратить атаки ботов и т. Д. Таким образом, пользователь не вводит данные, как в стандартной рекапче. Вместо этого невидимая рекапча будет интегрирована в мое приложение Spring Boot на внутренней стороне.

Итак, как я могу интегрировать такой механизм в проект (приложение Spring Boot)? Заранее спасибо.

Комментарии:

1. Кто-нибудь еще когда-либо использовал невидимую рекапчу в Java?

2. @Редактор Какая-нибудь помощь, кроме запроса на редактирование?

Ответ №1:

во-первых, если вам нужен механизм регулирования на IP и т. Д., Это не капча, это то, что вы ищете:

пружина-защитный блок-грубая сила

recaptcha по определению является способом остановить ботов от злоупотребления интерфейсом веб-сайта, чтобы повлиять на серверную часть,

краткое описание определения google

для этого я бы рекомендовал google recaptcha v3, он полностью бесшумный(кроме небольшого логотипа на веб-сайте), нет изображений с выбором автомобиля и т. Д… это работает путем сбора поведенческих данных от пользователя на странице(отлично подходит для одностраничных приложений, таких как react).,

В бэкэнде вы заранее храните закрытый ключ своего сайта (pub и закрытые ключи предоставляются google для каждого доменного имени).

после того, как пользователь отправит логин/регистрацию или любой другой запрос, вы можете отправить токен captcha пользователя вместе с ним,

затем вы можете передать токен google и получить оценку для указанного пользователя(от 0 до 1, чем выше, тем лучше), вы также получаете действие captcha, чтобы убедиться, что действие соответствует вызываемому api, все это весной, а не во внешнем интерфейсе, оттуда вы можете решить остановить процесс регистрации/ входа в систему даже до доступа к базе данных для получения пользовательских данных и в результате быстро остановить попытки бота…

Комментарии:

1. Большое спасибо за ваши подробные объяснения. Я зарегистрировался в Google и получил необходимый ключ и т.д. Однако мне нужен пример бэкэнд-реализации для Java, а затем я протестирую его почтальоном. Не могли бы вы, пожалуйста, добавить пример внутреннего кода для Java в дополнение к вашим хорошим объяснениям?

2. Кстати, я пытался проголосовать, но так как у меня недостаточно репо, я не могу. Я отмечу как ответ после того, как заставлю его работать.

3. @шестнадцатеричный вы не можете протестировать его с помощью postman, опять же, это специфическая функция для интеграции UI и BE, вот руководство по тестированию: baeldung.com/spring-security-registration-captcha

4. Большое спасибо. На самом деле у меня была реализация для интерфейса, но я не уверен, смогу ли я также использовать ее с интеграцией, упомянутой на той странице, которую вы дали (v3). По крайней мере, содержит ли эта страница все необходимые интерфейсные и серверные реализации для интеграции Captcha v3? На самом деле мне нужно интегрировать его в приложение Vue , и я не уверен, что мне нужно что-то дополнительно изменить?

5. С другой стороны, его объяснения действительно плохи из — за недостатка информации. Есть лучший пример для Captcha v3?