Перенаправление аутентификации на страницу входа в IdentityServer - PullRequest
0 голосов
/ 25 апреля 2018

У меня есть IdentityServer 4 и приложение MVC, которое получает удостоверение от IdentityServer.Все работает нормально.

Мой вопрос: почему я должен входить в IdentityServer, а не в проект MVC?

Я бы предпочел остаться в своем проекте MVC, а не перенаправляться в IdentityServer.и вернемся к моему проекту MVC.Может кто-нибудь объяснить, почему это так работает?

Перенаправления требуют времени, не являются мгновенными и создают много трафика, который не нужен.Я понимаю это перенаправление, когда есть внешний провайдер, такой как Facebook, но в моем случае я думаю, что это бесполезно.

И возможно ли с IdentityServer 4 войти / создать пользователя в приложении Mvc и вызвать функции APIс сервера IS4 для входа / создания пользователя?

1 Ответ

0 голосов
/ 10 июля 2018

Поведение, которое вам не нравится, это просто протокол.Протокол называется OpenId Connect.И Identity Server просто реализует этот протокол.Идея состоит в том, что только сам Identity Provider может достаточно аутентифицировать пользователя.
Существует обходной путь, называемый Поток пароля владельца ресурса или предоставление , где вы запрашиваете учетные данные у пользователя в своем клиентском приложении, а затем передаете эти учетные данные в IdP.Поток не рекомендуется для общего использования, но вы можете использовать его, когда у вас есть клиентское приложение и IdP.
Еще одно возможное решение для вас (в случае, если у вас есть единственное приложение и по какой-то очень странной причине, почему вы хотите использовать Identity Server в качестве IdP), это разместить Identity Server внутри вашего приложения.Затем, используя IdentityServerTools вспомогательный класс, вы можете получить доступ к внутренним компонентам IdSrv без сетевых вызовов.
Вы можете найти гораздо больше информации об обоих этих подходах в Документах Identity Server и Спецификация OpenId Connect .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...