Двухфакторная аутентификация неверный поток кода для OpenIddict 2.0.1 и ASP. NET Core 3.1 - PullRequest
0 голосов
/ 26 апреля 2020

Я пытаюсь сделать двухфакторную аутентификацию с потоком:
1. Первый запрос с именем пользователя / электронной почтой и паролем
2. Второй запрос с кодом аутентификации из мобильного приложения

Я использую библиотеку OpeIddict 2.0.1, которая использует As pNet .Security.OpenIdConnect.Server для проверки обработки запроса.
В соответствии с моим потоком я отправляю в первом запросе:

grant_type: 'password',
response_type: 'code',
client_id: 'mycliendid',
client_secret: '********',
username: 'user1',
password: '******',
scope: 'openid profile roles offline_access',
state: 'QRWDY8uGKRcv8S32NIL8XNHuNzL8BPauVDDnBU/n7FA='

Он обычно обрабатывается на на стороне сервера с запросом и ответом 200 с кодом состояния и кодом авторизации: 'nbj8FYHL4JGiEysbOhTgniVNZ/r9+QqCup6JWZxi0xA=' Второй запрос содержит:

grant_type: 'authorization_code',
response_type: 'token',
redirect_uri: 'https://localhost:5100/mainpage',
client_id: 'myclientid',
client_secret: '******'
code: 'nbj8FYHL4JGiEysbOhTgniVNZ/r9+QqCup6JWZxi0xA='

Этот запрос не обрабатывается в моем коде, он не передается как pNet Сторона защиты и пароль. Если я удаляю grant_type в первом запросе, сервер возвращает меня: The mandatory 'grant_type' parameter is missing
Я попытался отправить код, например «123456» в поле кода второго запроса из мобильного приложения, и он не работает с тем же сообщением " Указанный неверный код авторизации."

Что не так с моей стороны? Ты знаешь? Бороться с этим целую неделю

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