Spring Boot: reCaptcha, rest client, rememberMe и сохранение сессий в БД

Spring Boot Web Application (MVC): добавляем reCaptcha, поддержку rememberMe и хранения сессий в БД. Spring Boot упакован многими удобными механизмами, но поддержки капчи “из коробки” не сделано, что мы и исправим. Код из видео:
Зависимость на Spring Session:
Настройки для Spring Session и reCaptcha:
Для примера мы возьмём проект reCaptcha, т.к. он достаточно быстрый, надёжный и легко встраивается в любой проект. Первым делом нужно зарегистрировать аккаунт в проекте recaptcha и получить все необходимые ключи. Сайт проекта reCaptcha:

Для проверки корректности пользовательского ввода нам необходимо делать rest запросы к серверу recaptcha. Для этого мы используем встроенный в Spring Boot rest клиент, кратко описанный в следующем гайде:
Для поддержки rememberMe достаточно в настройках Spring Security добавить вызов одного метода, имеющего то же самое имя: rememberMe. После чего пользователь будет автоматически авторизовываться в нашем приложении, даже если у него истекло время действия сессии на web сервере. Но если у нас имеется несколько серверов и после технических манипуляций, вызывающих перезагрузку сервера, у нас будет пропадать информация, необходимая для автоматической авторизации пользователя. Поэтому мы добавим в наше приложение поддержку Spring Session JDBC, что позволит хранить активные сессии пользовтелей в БД. Spring session JDBC:
Сайт bootstrap:
Для проверки корректности работы приложения можно использовать сервис временых почтовых ящиков:
➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖ ➡ Твиттер:   / letscodedru   ➡ Чат в Discord:   / discord   ➡ Группа Вконтакте: https://vk.com/letscodedru
➡ Канал в Telegram:
➡ Чат в Telegram:
➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖ Поддержать проект: ➡ Patreon   / letscodedru   ➡ Яндекс.Деньги
➡ PayPal paypal.me/letscodedru ➡ Qiwi
➡ WebMoney/BitCoin
➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖ Ссылка на канал:    / @letscodedru   Ссылка на Яндекс.Дзен:

Смотрите также