Справочник системных ошибок и решений

Windows Server, Active Directory, 1С:Предприятие, СУБД, Linux, Cisco, MikroTik, Asterisk.

⚠️ Важная информация Все материалы, инструкции, команды и скрипты на сайте предоставлены исключительно в ознакомительных целях. Их применение может повлиять на работу операционной системы, программного обеспечения, баз данных, сетевого оборудования и других компонентов инфраструктуры. Перед выполнением действий создайте резервную копию и по возможности протестируйте изменения в безопасной среде. Пользователь самостоятельно оценивает риски и несет ответственность за результат. При отсутствии необходимых знаний обратитесь к квалифицированному ИТ-специалисту.

Event ID 4821 Windows Server, AD и Роли

Event ID 4821: A Kerberos service ticket was denied — аудит и решение сбоя

Обновлено: 28.08.2026 · Официальная документация ↗

Симптомы отказа в выдаче сервисного билета TGS (Event ID 4821)

Событие Event ID 4821 появляется на контроллере домена, когда клиент уже имеет действительный билет TGT, но при попытке запроса сервисного билета (Ticket Granting Service, TGS) к конкретной целевой службе (например, файловому серверу SMB, MSSQL или веб-серверу IIS) получает отказ контроллера домена.

Внешние проявления сбоя

  • Пользователи не могут подключиться к общей сетевой папке, SQL-серверу или внутреннему сайту с ошибкой Access Denied.
  • Событие фиксируется с кодом 0x12 (KDC_ERR_CLIENT_REVOKED) или 0x24 (KDC_ERR_POLICY).
  • В теле события указан целевой SPN (Service Principal Name) сервиса и имя запрашивающего пользователя.

Порядок исправления ошибки выдачи билета TGS

Важно: Отказ в сервисном билете часто связан с тем, что целевой сервер включен в Authentication Silo, доступ к которому запрещен учетной записи клиента.

  1. Идентификация целевого сервиса и имени SPN:
    Откройте событие в Event Viewer и найдите поле Service Name (например, MSSQLSvc/db01.corp.local:1433).
  2. Проверка ограничений сервиса в политиках Active Directory:
    Проверьте, не включена ли целевая учетная запись сервиса в изолированный бункер:
    Get-ADServiceAccount -Identity "svc_sql" -Properties msDS-AssignedAuthNPolicySilo
    Get-ADUser -Identity "svc_sql" -Properties msDS-AssignedAuthNPolicySilo
  3. Анализ контроля доступа к ресурсу (Compound Authentication):
    Если настроен Dynamic Access Control (DAC), убедитесь, что компьютер и пользователь соответствуют заданным Claims в правиле выдачи билета.
  4. Диагностика дубликатов SPN:
    Проверьте уникальность SPN целевой службы в лесу Active Directory:
    setspn -X
    setspn -Q MSSQLSvc/db01.corp.local:1433
  5. Перевыпуск билета на стороне клиента:
    Выполните команду для сброса сервисных тикетов:
    klist purge
    klist get MSSQLSvc/db01.corp.local:1433
💡 Практика специалистов: При миграции сервисов на gMSA (Group Managed Service Accounts) событие 4821 возникает, если хост не имеет прав на считывание пароля gMSA через политику PrincipalsAllowedToRetrieveManagedPassword.

Частые вопросы (FAQ)

В чем разница между Event ID 4820 и Event ID 4821?

Событие 4820 фиксирует отказ в получении начального удостоверения TGT, а 4821 — отказ в получении билета доступа к конкретной целевой службе (TGS) при уже имеющемся TGT.

Может ли событие 4821 быть вызвано устаревшим паролем сервисной учетной записи?

Да, если пароль учетной записи сервиса был изменен, а сам сервис не был перезапущен, KDC не сможет зашифровать TGS ключ и отклонит запрос.

Как проверить список текущих билетов TGS на компьютере пользователя?

Откройте командную строку и введите klist. В списке отобразятся все выданные тикеты с их SPN и сроками действия.

Какая подкатегория аудита отвечает за появление события 4821?

Событие регистрируется при включенной подкатегории 'Audit Kerberos Service Ticket Operations' (Аудит операций с билетами службы Kerberos).

Полезные материалы
Рекомендуем