У меня есть консольное приложение SERVER, в котором размещаются контроллеры WebApi с использованием собственного хостинга OWIN и выполняется под пользовательской учетной записью с именем «ServiceTest1».WebApi с OWIN SelfHost и Windows Authentication
В том же компьютере у меня есть другое консольное приложение CLIENT, которое выполняется под учетной записью «ServiceTest2», и я хочу захватить в SERVER, что «ServiceTest2» вызвал действие контроллера. Однако:
WindowsIdentity.GetCurrent()
всегда «ServiceTest1».Thread.CurrentPrincipal
является неаутентифицированнымGenericIdentity
.RequestContext.Principal
есть null.User
есть null.
Что мне нужно, чтобы сделать этот WebApi OWIN самообслуживанием, чтобы захватить идентификатор Windows вызывающего?
Что, что 'окр 'параметр? У меня есть обычные контроллеры WebApi, которые наследуются от ApiController. – vtortola
А, я прочитал ваш вопрос как желающий использовать метод OWIN для захвата личности. Я также отредактировал свой ответ с версией веб-API. – Zephyr
'RequestContext.Principal' имеет значение null, любая идея почему? – vtortola