#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?