Event ID 2308 IIS WAS: отключение пула из-за ошибки входа
Симптомы ошибки аутентификации пула (Event ID 2308)
В журнале System фиксируется ошибка: Event ID 2308: Application pool '[Имя_пула]' was disabled because of a logon failure for the identity configured for the application pool.
| Симптом | Последствия |
|---|---|
| Остановка пула приложений | Пул переходит в статус «Disabled» сразу при обращении к сайту |
| Ошибка HTTP 503 | Веб-сайт возвращает клиентам страницу с кодом 503 |
| Ошибки Logon Failure | В журнале Security регистрируется аудит сбоя входа (Event 4625) |
Пошаговое решение сбоя входа (Event ID 2308)
- Сбросьте пароль сервисной учетной записи в IIS:
# Обновление пароля доменной учетной записи в конфигурации пула:
& "$env:SystemRoot\System32\inetsrv\appcmd.exe" set config /section:applicationPools "/[name='ИмяПула'].processModel.password:НовыйПароль"- Проверьте блокировку сервисного пользователя в домене:
# Разблокировка сервисной учетной записи в Active Directory:
Unlock-ADAccount -Identity "ИмяУчетнойЗаписи"- Переключите пул на ApplicationPoolIdentity:
# Перевод пула на изолированную встроенную учетную запись:
& "$env:SystemRoot\System32\inetsrv\appcmd.exe" set apppool /apppool.name:"ИмяПула" /processModel.identityType:ApplicationPoolIdentity
# Запуск пула приложений:
& "$env:SystemRoot\System32\inetsrv\appcmd.exe" start apppool /apppool.name:"ИмяПула"Совет: Если вы используете доменную учетную запись, убедитесь, что локальная политика «Запретить вход в качестве пакетного задания» (Deny log on as a batch job) не содержит группу Domain Users.
Частые вопросы (FAQ)
Почему произошел сбой входа учетной записи пула?
Основные причины: истек срок действия пароля учетной записи в Active Directory, учетная запись заблокирована из-за неверных попыток входа или был изменен пароль без обновления в IIS.
Как предоставить доступ встроенной учетной записи ApplicationPoolIdentity к базе SQL Server?
Добавьте пользователя 'NT AUTHORITY\IUSR' или 'ДОМЕН\ИмяСервера$' в логины Microsoft SQL Server с необходимыми правами на базу данных.
Как быстро запустить все остановленные пулы приложений?
Выполните команду PowerShell: Get-IISAppPool | Where-Object {$_.State -eq 'Stopped'} | Start-IISAppPool.
Где в графическом интерфейсе IIS изменить пользователя пула?
В оснастке IIS: Пулы приложений -> Выберите пул -> Дополнительные параметры -> Удостоверение (Identity).