IdenityServer в корпоративной среде - разрешение информации пользователя в нескольких базах данных

Мы используем IdentityServer3 в качестве нашего центрального поставщика аутентификации. Теперь у меня есть общий вопрос об IdenityServer в корпоративной среде. Я пытаюсь объяснить это следующим примером:

  1. Если пользователь был успешно аутентифицирован, он получает токен от провайдера. Токен включает в себя уникальный идентификатор пользователя.
  2. Аутентифицированный пользователь отправляет запрос в WebApi, чтобы создать новый элемент (например, новый продукт).
  3. WebApi извлекает уникальный идентификатор из токена и создает новый продукт в базе данных. Кроме того, новый продукт был связан с уникальным идентификатором пользователя (например, как creationUserId).
  4. Другой пользователь отправляет запрос в WebApi, чтобы получить все доступные продукты.
  5. WebApi создает запрос к базе данных для получения всех продуктов. Кроме того, WebApi хочет преобразовать creationUserId каждого продукта в соответствующее имя пользователя. Но это невозможно, потому что имя пользователя хранится в базе данных идентификации, которая является другой базой данных, чем база данных приложения (например, для продуктов). Есть ли лучшие практики для решения этого требования?

Большое спасибо за вашу помощь!

С уважением

1 ответ

Спасибо за ответ. Я вижу только один способ реализовать мои требования:

-> Я сохраняю имя пользователя с userId в базе данных приложения, потому что API для перевода медленный.

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