Проверка подлинности Windows IIS, когда удостоверение пула приложений является локальной учетной записью - PullRequest
0 голосов
/ 15 марта 2019

У меня простой сценарий.Существует веб-служба ASP NET MyWebService, опубликованная на IIS 7 на server машине в MyAppPool пуле приложений, с проверкой подлинности Windows, провайдеры Negotiate и NTLM (в этом порядке).Там клиентское приложение, запущенное на client машине.Обе машины (сервер и клиент) находятся в одном domain.

enter image description here

В ApiController есть метод, оформленный AuthorizeAttribute с указаннымGroup имя.Клиентское приложение, использующее HttpClient для отправки запросов, UseDefaultCredentials, установленное на true, клиент для входа в систему как пользователь из указанной группы.

Когда MyAppPool удостоверение личности ApplicationPoolIdentity или LocalSystem (илидругая встроенная учетная запись) или любая учетная запись домена, все это работает.Запрос приходит на сервер от имени входа клиента.Я хочу использовать локальную учетную запись сервера с определенными разрешениями (по соображениям безопасности) в качестве идентификатора MyAppPool, но в этом случае клиент получает ошибку 401 Unauthorized.Из логов сервера я вижу, какие запросы приходят анонимно.Все различия в идентичности пула приложений, все остальные настройки такие же.Я пытался создать SPN, но он не может найти локальную учетную запись сервера.

Есть ли способ решить эту проблему для локальной учетной записи сервера?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...