IdentityModel: получение UserInfo из токена доступа через IdentityServer - PullRequest
0 голосов
/ 28 марта 2019

У меня есть сервер идентификации ( IdentityServer4 ), настроенный как локальный хост.Мой клиентский проект AspNet WebForms на данный момент.Есть еще одно приложение (javascript), которое использует тот же сервер идентификации.

Это приложение javascript вызывает мое приложение веб-формы и предоставляет accessToken, предоставляемый через IdentityServer.

Теперь я хочу вызвать конечную точку userInfo, чтобы получить openId и область действия профиля.

Я делаю, как указано в документации Документация , надеюсь получить userInfo с помощью IdentityModel .Но на данный момент я не могу получить какую-либо информацию о пользователе.Ниже приведен пример ответа от удостоверяющего сервера

enter image description here

Вот код, упомянутый в документации

   protected void Page_Load(object sender, EventArgs e)
   {
        var httpclient = new HttpClient();
        var token = HttpContext.Current.Request.Headers.Get("Authorization");
        var response = httpclient.GetUserInfoAsync(new UserInfoRequest
        {              
            Address = "https://localhost:44367/connect/userinfo",
            Token = token

        });
        if (response.IsFaulted)
        {

        }
    }

Как-то так жедолжны предоставить clientId при отправке запроса на identityServer?Кроме того, вы можете понять, что идет не так и как я могу получить userInfo из accessToken.

Обратите внимание, что мой клиент в проекте веб-формы Asp.Net

...