У меня проблемы с получением моего текущего пользователя access_token.Вот мои настройки:
- QuickstartIdentityServer (QIS) в ядре aspnet, хранилище идентификаторов и EF
- API (API) в NodeJ.Проверяет токены jwt в заголовке по QIS.
- угловое приложение SPA, которое отлично работает с QIS и API и выходит за рамки этого вопроса
В разделе QuickstartIdentityServer (QIS) сайт (страница сведений о пользователе), я хотел бы вызвать конечную точку API, используя access_token для проверки подлинности запроса.Я изо всех сил пытаюсь получить access_token текущего пользователя с моего сайта QIS.Всякий раз, когда я звоню HttpContext.GetTokenAsync("access_token")
, я получаю нулевое значение.Я видел этот раздел документации IdSrv4: https://identityserver4.readthedocs.io/en/release/quickstarts/5_hybrid_and_api_access.html?highlight=gettokenasync, но, похоже, он применим к клиенту MVC, а не к моему собственному серверу идентификации.
Кто-нибудь может пролить свет на то, как получить access_token моего пользователя?
Спасибо
РЕДАКТИРОВАТЬ
Вот отправная точка, чтобы попытаться лучше объяснить мою проблему: https://github.com/IdentityServer/IdentityServer4.Samples/tree/release/Quickstarts/6_AspNetIdentity/src/IdentityServerWithAspNetIdentity
Начиная сВ этом проекте QIS я хотел бы получить токен доступа зарегистрированного пользователя.Так, например, если я отредактирую HomeController
, чтобы добавить этот вызов:
public async Task<IActionResult> Index()
{
var accessToken = await HttpContext.GetTokenAsync("access_token");
return View(accessToken);
}
, тогда я смогу вызвать мой NodeJS API с этим токеном в заголовке аутентификации.
Надеюсь, что этолучше объясняет мою проблему.