Я хочу создать аутентификацию на основе JWT.Учетные данные пользователя находятся в базе данных Mariadb, и я использую драйвер jdbc для доступа к базе данных.Я хочу сделать запрос OAuth2 с паролем grandType следующим образом:
POST /oauth/token HTTP/1.1 Host: authorization-server.com Content-type: application/x-www-form-urlencoded grant_type=password &username=exampleuser &password=1234luggage &client_id=xxxxxxxxxx
src: https://developer.okta.com/blog/2018/06/29/what-is-the-oauth2-password-grant
Чтобы получить ответ с access_token и refresh_token.
У меня естьиспользовал похожую конфигурацию, подобную этой https://github.com/nydiarra/springboot-jwt/tree/master/src/main/java/com/nouhoun/springboot/jwt/integration/config
Я не очень понимаю, как работает система, чтобы получить и сравнить учетные данные пользователя, хранящиеся в базе данных.Мне действительно нужно иметь конкретную схему базы данных для работы с сервером OAuth2?Как это https://www.baeldung.com/rest-api-spring-oauth2-angularjs У меня есть существующая база данных, могу ли я указать логику для проверки отправленных данных учетных данных пользователя?
Спасибо за чтение.
Вы можете настроить способ извлечения пользовательских данных из базы данных, переопределив службу userdetailsservice.Этот бин выбирает пользователя из базы данных.Пожалуйста, обратитесь к этой статье для более подробной информации: https://www.baeldung.com/spring-security-authentication-with-a-database