Как настроить правильный логин для сущности с spring-secuity, oauth2? - PullRequest
0 голосов
/ 18 декабря 2018

Я создал сущность с грубыми операциями.Я использовал spring-boot, spring-security, oauth2, jwt.К этой статье http://sivatechlab.com/secure-rest-api-using-spring-security-oauth2-jwt/

Зачем мне нужно создавать таблицу oauth_client_details?Когда я хочу войти, сначала мне нужно ввести логин и пароль от oauth_client_details first

И после этого ввести имя пользователя и пароль для моего пользователя second

Как настроить вход в систему для моей сущности и получить токен после успешного входа в систему?

1 Ответ

0 голосов
/ 19 декабря 2018

Если вы используете JdbcTokenStore, вам нужно настроить oauth связанную таблицу в базе данных.В моем шаблонном проекте я использую JwtTokenStore для oauth2 без сохранения состояния.Таким образом, вам не нужна таблица, связанная с oauth. Здесь завершено spring-boot-rest пример проекта API.Вы можете сослаться на следующую вещь

  1. spring-boot
  2. mybatic с mysql
  3. ExceptionHandlerAspect
  4. LoggingAspect с log4j2
  5. ResponseBodyAdvice
  6. ResponseEntityExceptionHandler
  7. spring-security-5 с oauth2

Запуск DB.sql для настройки базы данных в src/main/resources.

Когда я хочу войти в систему, сначала мне нужно ввести логин и пароль от oauth_client_details

Если вы используете oauth, вы должны знать структуру вашего приложения.У Oauth2 есть следующий поток -

  1. Предоставление кода авторизации
  2. Неявное
  3. Предоставление клиентских учетных данных
  4. Предоставление пароля

В моем приложении я использую Implicit из-за - У нас есть

  1. Сервер REST API (spring-boot)
  2. Веб-сайт (клиент)
  3. МобильныйПриложение (клиент)
  4. Клиент / пользователь (фактический пользователь)

Таким образом, согласно oauth, клиент (веб-сайт или мобильное приложение) должен аутентифицировать себя.В противном случае вы не можете получить access_token.Подробнее здесь .

...