Identity Server 4 странное поведение, не перенаправляя обратно к клиенту MVC после входа в систему - PullRequest
0 голосов
/ 29 июня 2018

Используя быстрый запуск aspnetcore 2.1 и Identity Server 4, я настроил токен-сервер с клиентом mvc, чтобы при использовании AuthorizeAttribute он перенаправлялся на экран входа в систему сервера ID4 и после входа перенаправлялся обратно на клиент mvc.

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

Я могу нормально войти, используя

signInManager.PasswordSignInAsync ()

но он не перенаправляет обратно к клиенту, как я ожидал.

Из журнала Fiddler я вижу, что он перенаправляет на / connect / authorize / callback, а затем обратно на страницу входа. В этот момент пользователь явно вошел в систему, потому что имя пользователя появляется с возможностью выхода из системы. Точка останова при входе в систему получает действие и видит, что User.Identity.IsAuthenticated имеет значение true.

Для тестирования я поменял метод входа в систему на метод действия входа в систему из шаблона is4inmem, который использует

HttpContext.SignInAsync (user.SubjectId, user.Username, props)

с этого момента он перенаправляет обратно к клиенту.

Мне не хватает некоторой части пользовательского хранилища, которое _signInManager.PasswordSignInAsync вызывает для регистрации пользователей так же, как HttpContext.SignInAsync?

1 Ответ

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

Готовый конфиг, готовый для вставки, я понял, что закомментировал эту строку:

builder.AddAspNetIdentity ();

Когда я раскомментировал, что он работал отлично.

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