Почему моему приложению ASP.NET, работающему как пользователь домена, требуется перезапуск, чтобы использовать PrincipalContext после проблемы с Active Directory? - PullRequest
0 голосов
/ 09 ноября 2018

У меня есть приложение ASP.NET 4.5, которое работает в пуле приложений с определенным именем пользователя и паролем домена. Он работал хорошо в течение нескольких месяцев. Несколько дней назад возникла проблема с Active Directory, детали которой мне неизвестны, но пользователи моего приложения в момент возникновения проблемы сообщали, что им не удалось использовать приложение.

Проблема AD была в конечном итоге «решена», но пользователи все еще не могли использовать приложение - пока я не переработал пул приложений.

Перед перезапуском я поймал это исключение первого шанса:

System.Runtime.InteropServices.COMException (0x8007052E): The user name or password is incorrect.

   at System.DirectoryServices.DirectoryEntry.Bind(Boolean throwIfFail)

После очистки я перестал видеть это исключение.

Само исключение было сгенерировано вызовом PrincipalContext.FindByIdentity, который не удался, пока я не переработал пул приложений.

С какой стати перезапуск пула приложений изменит поведение PrincipalContext, если учетные данные пула приложений не изменились?

1 Ответ

0 голосов
/ 09 ноября 2018

Пулы приложений, использующие учетные записи домена, работают с контроллерами домена AD для проверки пользователя домена.

Поскольку мы не знаем, что произошло в вашей компании с AD, мы не можем однозначно сказать, почему.Мы можем только предположить или предположить, что это, по-видимому, послужило причиной неправильной работы.

Сброс пула после того, как AD снова был счастлив, сбросьте это волшебство.Волшебство - как я на самом деле не знаю под капотом механики, но пул приложений полагается на AD для аутентификации пользователя домена.

Время перезапуска пула приложений по умолчанию, равное 29 часам, в конечном итоге также исправило бы это.Вы только что сделали это сами.

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