Event ID 5140 IIS WAS: отключение пула из-за отказа входа учетной записи
Симптомы ошибки авторизации пула (Event ID 5140)
В журнале System фиксируется ошибка от источника Microsoft-Windows-WAS: Event ID 5140: Application pool '[Имя_пула]' was disabled because of a logon failure for the identity configured for the application pool.
| Симптом | Последствия |
|---|---|
| Остановка пула приложений | Пул немедленно останавливается при попытке старта |
| Код ошибки 503 | Веб-сайт возвращает клиентам страницу 503 Service Unavailable |
| Ошибки аудита безопасности | Регистрация событий 4625 в журнале Security |
Пошаговое решение ошибки Event ID 5140
- Смените пароль учетной записи в свойствах пула:
# Обновление учетных данных пула приложений:
& "$env:SystemRoot\System32\inetsrv\appcmd.exe" set config /section:applicationPools "/[name='ИмяПула'].processModel.password:НовыйПароль"- Переключите пул на встроенную учетную запись ApplicationPoolIdentity:
# Перевод пула на изолированную системную учетную запись:
& "$env:SystemRoot\System32\inetsrv\appcmd.exe" set apppool /apppool.name:"ИмяПула" /processModel.identityType:ApplicationPoolIdentity
# Запуск пула приложений:
& "$env:SystemRoot\System32\inetsrv\appcmd.exe" start apppool /apppool.name:"ИмяПула"- Проверьте статус доменного пользователя в Active Directory: убедитесь, что срок действия учетной записи не истек (
AccountExpired = False).
Совет: Если учетная запись пользователя настроена на обязательную смену пароля при следующем входе в систему (Must change password at next logon), служба WAS не сможет пройти аутентификацию.
Частые вопросы (FAQ)
Почему служба WAS отключает пул приложений при ошибке 5140?
Чтобы защитить учетную запись от полной блокировки в контроллере домена Active Directory из-за тысяч повторных неудачных попыток входа.
Как разрешить сервисному аккаунту вход в систему без смены пароля?
В свойствах пользователя в Active Directory установите флажок 'Бессрочный пароль' (Password never expires).
Как предоставить доступ новому удостоверению пула к каталогу сайта?
Используйте icacls: icacls "C:\inetpub\wwwroot\site" /grant "IIS AppPool\ИмяПула":(OI)(CI)M.
Где посмотреть точный статус всех пулов IIS?
Выполните в консоли: %windir%\system32\inetsrv\appcmd.exe list apppools.