Я использовал визуальную студию 2015, создав простой веб-проект api на своем офисном ПК, который Windows зарегистрировал в домене компании (AD). Я изменил файл web.config для проверки подлинности интеграции - <system.web><authentication mode="Windows" />
. URL http://localhost:23151/api/Model1 возвращает действительные данные XML из базы данных.User.Identity.Name is null?
Я изменил анонимную аутентификацию на Disabled и Windows Authentication на Enabled в свойстве проекта для параметров IIS Express (Development Server).
Я установил точку останова в public IQuerybal<Model1> GetModel1()
и проверил значение User.Identity.Name
, и он возвращает null
?
Обновление: Что странно, я создал новый проект на другой компьютер (все еще в Visual Studio 2015), и я могу получил свой логин для Windows от собственности User.Identity.Name
.
Обновление 2: Я попытался скопировать файлы проекта на новый компьютер и по-прежнему получил ту же проблему. Поэтому в проекте должны быть некоторые настройки. Очень странно.
Ваш пользователь вошел в систему? – jgasiorowski
Да, моя Windows вошла в компанию AD. – ca9163d9
Возможный дубликат [HttpContext.Current.User null с проектом только для веб-API v2] (http://stackoverflow.com/questions/31078855/httpcontext-current-user-null-with-web-api-v2-only-project) –