Spring Boot Security: добавляем регистрацию и авторизацию пользователей в приложение (простой сайт)

Описание к видео Spring Boot Security: добавляем регистрацию и авторизацию пользователей в приложение (простой сайт)

Spring Boot Web Application (MVC): Добавляем Spring Security (пользователи и авторизация) в приложение. Когда в прложении работает несколько пользователей, им необходимо разделять свои данные. Для решения этой проблемы мы создаём пользовательские аккаунты и применяем для этого фреймворк Spring Security.

Поддержать проект:
➡ Стать спонсором https://www.youtube.com/letscodedru/join
➡ Patreon   / letscodedru  
➡ Яндекс.Деньги https://money.yandex.ru/to/4100145167...
➡ PayPal paypal.me/letscodedru
➡ Qiwi https://qiwi.me/letscode

Ссылка на git репозиторий из видео:
https://github.com/drucoder/sweater/t...

Для начала нам необходимо найти нужный гайд на сайте Spring:
https://spring.io/guides/gs/securing-...

Следуя руководству, нам необходимо сделать 2 страницы: публичную, роль которой у нас возьмет на себя страница greetings, и доступная после авторизации, роль которой возьмет на себя страница main. Нам потребуется только немного изменить мэппинг страниц и добавить ссылку с главной на приватную страницу.

Далее мы подключаем зависимость Spring Security, настраиваем модуль вэб-безопасности, и добавляем страницу авторизации.

По умолчанию, в Spring Security включен механизм CSRF и нам необходимо передавать со всеми формами ключ защиты. Для этого в файле настроек приложения application.properties нужно добавить строку настройки из блокнота:
https://gist.github.com/drucoder/ecb7...

В результате мы имеем простейший механизм авторизации в приложении. Проблема в том, что он использует фиксированные учетные записи, хранящиеся в оперативной памяти и все данные пользователей открыто лежать в исходном коде.

Для добавления возможности хранения учетных записей пользователей в БД, нам нужно изменить настройки Spring Security и создать доменный класс пользователя. Также, нам необходимо добавить страницу регистрации новых пользователей.

Руководство по mustache:
http://mustache.github.io/mustache.5....

Руководство по JPA репозиториям:
https://docs.spring.io/spring-data/jp...

➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖

➡ Твиттер:   / letscodedru  
➡ Чат в Discord:   / discord  
➡ Группа Вконтакте: https://vk.com/letscodedru
➡ Канал в Telegram: https://t.me/letsCode_dru
➡ Чат в Telegram: https://t.me/joinchat/FeiP9xEhqHajfqh...

➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖

Ссылка на плейлист:
   • SDKMan: установка Java, Kotlin, Scala...  
Ссылка на канал:    / @letscodedru  
Ссылка на Яндекс.Дзен: https://zen.yandex.ru/media/id/5ac209...

Комментарии

Информация по комментариям в разработке