Короткий ответ

Реестр привилегированных учёток — таблица «кто может сломать Contoso», не штатное расписание. Включите: группы AD (Domain Admins, Enterprise Admins, Schema Admins, кастомные *-Admins), локальные Administrators на серверах, sudo/root на Ubuntu, панели гипервизора, firewall, Microsoft 365/Azure roles, VPN с полным туннелем в серверную VLAN, backup-консоли. На каждую учётку: ФИО/сервис, система, тип права, владелец, обоснование, дата проверки.

Секреты — в менеджере паролей, в реестре только кто и куда, не пароль. Владелец реестра — Иван Петров.

Симптомы и как отличить

Типичная картина:

  • «админов трое», в Domain Admins восемь объектов;
  • учётка admin на каждом Linux с одним паролем;
  • подрядчик заходит на HV01 под локальным пользователем, которого нет в AD;
  • после аудита нельзя ответить, кто может восстановить из backup.

Отличия:

СимптомДругая темаСтатья
Пароли в xlsxхранение секретовExcel
Уволенный ещё в VPNoffboardingуволенные
Нет квартальной сверкипроцесс аудитааудит прав
Пользователь с лишними правами на шарене привилегированный контурGPO/ACL отдельно

Возможные причины

  1. Группы плодили «на задачу» и не чистили.
  2. Сервисные учётки с интерактивным логоном.
  3. Вложенность групп: человек не в DA напрямую, но через IT-All.
  4. Linux не в домене — учётки живут в /etc/passwd.
  5. Облако завели на личную почту директора.
  6. Редко: скрытая учётка бывшего подрядчика на iLO.

Диагностика

1. Привилегированные группы AD

$groups = @(
  'Domain Admins',
  'Enterprise Admins',
  'Schema Admins',
  'Administrators',
  'Backup Operators',
  'Account Operators',
  'Server Operators'
)
foreach ($g in $groups) {
  Get-ADGroupMember -Identity $g -Recursive |
    Select-Object @{n='Group';e={$g}}, SamAccountName, objectClass, distinguishedName
}

-Recursive обязателен: без него вложенность врёт. Сверьте objectClass user vs group vs computer (DC в DA — ожидаемо).

2. Локальные админы на серверах

По инвентарю узлов выборочно:

Invoke-Command -ComputerName 'FILE01.contoso.example' -ScriptBlock {
  Get-LocalGroupMember -Group 'Administrators'
}

Неожиданные локальные учётки — в реестр со статусом investigate.

3. Linux sudo/root

getent group sudo adm
sudo grep -RIn '^[^#]' /etc/sudoers /etc/sudoers.d
getent passwd | awk -F: '$3==0 {print}'

Ключи в ~/.ssh/authorized_keys у root — тоже привилегия.

4. Вне каталога

Чеклист панелей: iLO/iDRAC, Hyper-V/VMware, Proxmox, firewall, DNS-регистратор, Microsoft 365 Global Admin, консоль backup, CI. На каждую — строка, даже если вход по персональной учёте вендора.

Решение

Лист CMDB Privileged

accountsystemprivilegetypeownerreasonlast-reviewticket
ivan.petrovcontoso.exampleDomain AdminsuserИван Петровштатный старший2026-09-08
svc-backupcontoso.exampleBackup OperatorsserviceИван ПетровVeeam2026-09-08
rootUBNT01uid 0localИван Петровbreak-glass2026-09-08
vendor.rdpHV01AdministratorsvendorИван Петровсрок до 2026-10-01CHG-12

Правила:

  1. Именные учётки людей, не общие admin.
  2. Сервисные — без интерактивного логона, где платформа позволяет.
  3. Подрядчик — дата окончания в той же строке.
  4. Break-glass — отдельные строки, проверка что пароль в vault, не в Excel.

Сценарий A. Реестра нет, нужен за неделю

День 1: DA/EA/SA и Global Admin облака. День 2: локальные админы 10 критичных узлов. День 3: Linux sudo и гипервизор. Остальное — очередь, но критичное не откладывать «на потом».

Сценарий B. Слишком много людей в DA

Не выкидывайте всех в пятницу. План: именные учётки в менее привилегированные группы, DA только для задач каталога, ежедневная работа — отдельный аккаунт. Это связано с hardening, здесь фиксируйте целевое членство в реестре и изменение через регламент изменений.

Как проверить, что проблема устранена

  • Выгрузка Get-ADGroupMember -Recursive по DA совпадает с листом (плюс компьютеры DC).
  • Нет учётки в DA без ФИО или сервисного обоснования.
  • По панелям вне AD есть строки.
  • Дежурный находит, кто может зайти на FW01, за 1 минуту.
  • Квартальная дата last-review не пустая.

Сверьте выборку: возьмите случайный Linux и случайный Windows — состав sudo/Administrators = CMDB.

Если не помогло

  • Группы с делегированием OU не видны в DA: добавьте кастомные Helpdesk-ResetPassword и аналоги в тот же реестр, иначе «не админ, но может захватить учётку».
  • GMSA/MSA: внесите как service, не как людей.
  • Аутсорс с общей учёткой: запретите, заведите именные, общую — в revoke.
  • Облачные PIM/JIT: в реестре фиксируйте кто eligible, не только active.

Профилактика

  • Изменение членства DA — только через заявку и журнал.
  • Onboarding/offboarding чеклист ссылается на этот реестр.
  • Раз в квартал — полный аудит прав.
  • Мониторинг изменений групп AD (если ещё не включён в security-разделе) — сигнал к обновлению листа.

FAQ

Включать ли LAPS-пароли локальных админов ПК?

В этот реестр — нет, это массовые рабочие станции. Исключение: jump/admin-ПК, с которых ходят на серверы.

Компьютерные объекты в Domain Admins — ошибка?

Контроллеры домена там ожидаемы. Посторонний PC в DA — инцидент, не «так сложилось».

Нужно ли вносить права SQL sysadmin?

Да, если это прод-SQL. Строка system=SQL01, privilege=sysadmin.

Как быть с группами, вложенными на 4 уровня?

Только -Recursive и документирование цепочки в notes. Плоская схема проще для аудита — цель на потом, реестр нужен сейчас.

Реестр в Excel — не те же грабли, что пароли?

Реестр без паролей на шаре с ACL IT допустим как CMDB. Пароли туда не писать. Лучше тот же контур, что CMDB узлов.

Кто подписывает обоснование?

Владелец сервиса или Иван Петров как owner IT-процесса. Пустое reason — право под удаление в следующем аудите.