Хранение сервера идентификации и аутентификации в отдельных проектах

У меня есть несколько клиентских приложений, которые я хочу поместить в службу аутентификации сервера идентификации, для которой я использую Duende IdentityServer. Итак, мой проект Identity Server состоит из следующего.

  • Блоки кода для настройки Identity Server
  • Пользовательский интерфейс ASP.NET MVC для входа в систему, ошибки и т. Д.

Я хочу сохранить Identity Server и приложение Login в отдельных проектах. Вот что я пытаюсь реализовать.

  • Проект Identity Server: чтобы блоки кода проверяли токен и проверяли, является ли он действительным токеном.
  • Если токен недействителен, выполните перенаправление на страницу входа в приложение для входа.
  • После успешного входа действительного пользователя вернитесь на сервер идентификации, сгенерируйте маркер и сохраните маркер так же, как и в обычном сервере идентификации.
  • И с каждым ответом на запрос токен будет проверяться Identity Server.

Но я не уверен, возможно ли это и как это реализовать. Есть ли способ разделить сервер идентификации и приложение входа в отдельные проекты?

1 ответ

Мы также оцениваем возможность создания отдельных приложений для пользовательского интерфейса и для остальной части IdentityServer. К сожалению, мы пришли к выводу, что IdentityServer естественным образом не поддерживает этот сценарий. Например, существование IIdentityServerInteractionService предполагает, что взаимодействие предназначено для использования в одном приложении посредством внедрения зависимостей, а диаграмма в документации также предполагает, что существует одно приложение - см. Ссылку ниже. Я бы не сказал, что это невыполнимо, но мы нашли мало ресурсов, поддерживающих этот сценарий. Сообщите нам, если найдете золото ...

https://identityserver4.readthedocs.io/en/latest/topics/signin.html#login-workflow

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