В настоящее время мы размещаем веб-приложение .net core 2.1 в IIS, и оно использует проверку подлинности Windows.Мы хотим олицетворять учетные данные вызывающего абонента, когда мы вызываем другой веб-интерфейс, вот наш код
WindowsIdentity identity = (WindowsIdentity)HttpContext.User.Identity;
WindowsIdentity.RunImpersonated(identity.AccessToken, () =>
{
using (var client = new System.Net.Http.HttpClient(new HttpClientHandler() { Credentials = CredentialCache.DefaultCredentials }))
{
// here is the code we are having issue
var response = client.GetAsync("http://www.google.com").Result;
}
});
Сообщение об ошибке следующее:
HttpRequestException: обычно это временная ошибка при разрешении имени узла и означаетчто локальный сервер не получил ответ от авторитетного сервера.
Без олицетворения код работает нормально.Любая рекомендация?