У меня есть сервер идентификации ( IdentityServer4 ), настроенный как локальный хост.Мой клиентский проект AspNet WebForms на данный момент.Есть еще одно приложение (javascript), которое использует тот же сервер идентификации.
Это приложение javascript вызывает мое приложение веб-формы и предоставляет accessToken, предоставляемый через IdentityServer.
Теперь я хочу вызвать конечную точку userInfo, чтобы получить openId и область действия профиля.
Я делаю, как указано в документации Документация , надеюсь получить userInfo с помощью IdentityModel .Но на данный момент я не могу получить какую-либо информацию о пользователе.Ниже приведен пример ответа от удостоверяющего сервера
Вот код, упомянутый в документации
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