Обратите внимание: на каждом этапе, который я описываю ниже, я захожу под одной и той же учетной записью пользователя домена.
У меня есть веб-приложение, которое управляет службой на удаленном компьютере (через ServiceController ). Когда я подключаюсь к веб-сайту удаленно и пытаюсь контролировать службу, я получаю исключение InvalidOperationException: доступ запрещен.
Я знаю, что это МОЖЕТ работать, потому что, когда я подключаюсь к веб-сайту с веб-сервера (удаленный рабочий стол, войдите в систему как пользователь моего домена, затем откройте веб-страницу), он работает как положено.
Я настроил IIS и ASP.NET, чтобы требовать проверки подлинности Windows и олицетворения. Я регистрирую участника текущего потока, когда это не удается, и вижу, что поток работает под моей идентификацией, независимо от того, подключаюсь ли я удаленно или с самого сервера.
Я пытался заставить IIS использовать аутентификацию Kerberos, NTLM и то и другое одновременно; независимо от того, сообщает ли мой принципал свой AuthenticationType как «Negotiate» или «NTLM», не имеет значения. Ни один из них не работает, когда я подключаюсь удаленно (с моей локальной машины)
ДРУГАЯ странная вещь об этом заключается в том, что если я отлаживаю с моего локального компьютера / подключаюсь к удаленному серверу, это работает каждый раз! Но я НЕ отлаживаю, каждый раз это терпит неудачу!
Что, черт возьми, здесь может происходить?