проблема входа asp.net core 3 реагирует на идентификационный сервер в / authentication / login-callback - PullRequest
0 голосов
/ 28 сентября 2019

Я только начал проект, используя Dot Net Core 3 реагировать с индивидуальным шаблоном учетной записи пользователя.также сделал самоподписанный файл сертификата * .pfx и загружен на сервер.

проблема заключается в том, что я пытаюсь войти в систему после www.example.com/authentication/login-callback?code=** я получаю этоошибка: «при входе произошла ошибка»в терминале:

POST https://www.kitro.ir/connect/token 400 Произошла ошибка входа в систему: Ошибка: (400) в XMLHttpRequest.a.onload (oidc-client.min.js: 737)

но когда я вставляю этот URL в браузер: www.example / Identity / Account / Manage, я вижу, что я вошел в систему и все в порядке.но AuthorizeService не может создать токен jwt и войти в систему.

1 Ответ

0 голосов
/ 30 сентября 2019

Взгляните на это.Это ожидаемое поведение.

https://github.com/IdentityServer/IdentityServer4/issues/2484

В случае использования AFT (AntiForgeryToken) с SPA, токен XSRF, сгенерированный сервером, предназначен для неаутентифицированного / анонимного пользователя,как только пользователь войдет в систему, он не будет снова зарегистрирован.мы столкнулись с подобной проблемой во время нашей реализации, и это происходит только тогда, когда у пользователя открыт экран входа в систему на нескольких вкладках.Во всех других случаях использования SPA (клиенты серверов идентификации) должны проверить JWT в локальном хранилище / хранилище сеансов и, если он недействителен, отправить пользователя на страницу входа в систему серверов идентификации.

Существуют способыВы можете исправить эту ошибку, но это не так просто, и это хак , вам нужно иметь промежуточное программное обеспечение для обработчика исключений, которое ищет код ошибки 400, а затем проверяет контекст HTTP, а также, является ли пользователь действительным и вошел в систему., отправьте пользователя соответствующим URL возврата клиента.

https://github.com/IdentityServer/IdentityServer4/issues/2676#issuecomment-439893334

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