В настоящее время я работаю над приложением и выполняю аутентификацию первой стороны следующим образом:
- Пользовательские запросы
Login
Конечная точка с UserName
и Password
. Login
конечная точка пересылает учетные данные в орган (IdentityServer4), используя поток Resource Owner
. Он возвращает accessToken
обратно пользователю. - Пользователь использует
accessToken
в последующем запросе. Они также могут вызвать <authority>/connect/userinfo
для профиля пользователя.
Однако я не уверен, как получить информацию о профиле пользователя при последующих запросах на серверной части. * ClaimsPrincipal
имеет только базовые c претензии к конечному пользователю.
Я не могу позвонить <authority>/connect/userinfo
(используя IdentityModel ), так как на сервере больше нет маркера необработанного доступа просто ClaimsPrincipal
, который уже был извлечен выше в конвейере запросов.
Как получить дополнительную информацию о пользователе в бэкэнде. Я просто запрашиваю это сам? Что произойдет, если мне не принадлежат данные профиля (например, они вошли в систему с помощью Google?)
Кажется, что самый простой способ - просто запросить у власти информацию о предмете, но похоже, что Я подхожу к этому неправильно.
Как я могу получить профиль пользователя из бэкэнда, не имея доступа к необработанному accessToken?