Как интегрировать сервер идентификации в полнофункциональное приложение с пользователями приложения?

Процесс регистрации / входа в систему для моего приложения в настоящее время существует следующим образом:

  1. Если пользователь приложения регистрируется, его учетные данные сохраняются, и новый входящий в систему пользователь возвращается клиенту с токеном JWT, созданным поддерживаемым приложением.
  2. Если пользователь приложения входит в систему, его имя пользователя и данные приложения извлекаются из базы данных и возвращаются вместе с токеном JWT, сгенерированным серверной частью приложения.

Я пытаюсь интегрировать сервер идентификации (Keycloak), но я не совсем уверен, как справиться с этим в тандеме с текущим потоком.

Мой текущий мыслительный процесс для этого потенциального потока заключается в том, что пользователь нажимает «Войти с помощью SSO» на странице клиента, он входит в систему через страницу входа на сервер идентификации, а затем перенаправляется обратно на страницу клиента с токеном JWT. Затем на сервер отправляется запрос, содержащий имя пользователя и токен, предоставленные сервером идентификации. ЕСЛИ имя пользователя этого пользователя существует в базе данных, вернуть пользователя, вошедшего в систему, с тем же токеном и данными приложения. ЕСЛИ имя пользователя этого пользователя НЕ существует в базе данных, создайте пользователя с этим именем пользователя, ЗАТЕМ верните имя пользователя для входа, как описано выше.

Это разумное рассуждение и это типичный образец, который будет использоваться в этом сценарии?

0 ответов

Другие вопросы по тегам