Відомий всім адміністраторам факт, що після додавання комп'ютера або користувача в групу Active Directory, для поновлення членства в групах і застосування призначених прав / політик, потрібно перезавантажити комп'ютер (якщо в доменну групу додавалася обліковий запис комп'ютера) або перезайти в систему (для користувача). Це пов'язано з тим, що членство в групах AD оновлюється при створенні квитка Kerberos, яке відбувається при завантаженні системи і при вході користувача.
У деяких випадках перезавантаження системи або logoff користувача не виконаємо по виробничим причин. А скористатися отриманим правами, доступом або застосувати нові політики потрібно вже зараз. Є можливість оновити членство облікового запису в групах AD без перезавантаження або перереєстрації користувача в системі.
Примітка. Описана в даній статті методика буде працювати тільки для мережевих сервісів, що підтримують Kerberos аутентифікацію. Служби, що працюють тільки з NTLM аутентифікацією як і раніше вимагають логофа + Логон користувача або перезавантаження Windows.Список груп, в яких складається поточний користувач можна отримати з командного рядка за допомогою команди:
whoami / groups
або GPresult
gpresult / r
Список груп, в яких створені учасником міститься в розділі The user is a part of the following security groups.
Скинути поточні тікети Kerberos без перезавантаження може утиліта klist.exe . Klist включена в ОС Windows починаючи з Windows 7, для XP і Windows Server 2003 встановлюється в складі Windows Server 2003 Resource Kit Tools.
Щоб скинути весь кеш тікетів Kerberos комп'ютера (локальної системи) і відновити членство комп'ютера в групах AD, потрібно в командному рядку з правами адміністратора виконати команду:
klist -lh 0 -li 0x3e7 purge
Після виконання команди і поновлення політик до комп'ютера будуть застосовані всі політики, призначені групі AD через Security Filtering.
Що стосується користувача. Припустимо, доменна учетка користувача була додана в групу Active Directory для доступу до файлового ресурсу. Природно, доступ до каталогу без перелогіна у користувача не з'явиться.
Скинемо все тікети Kerberos користувача командою:
klist purge
Щоб побачити оновлений список груп, потрібно запустити нове вікно командного рядків і через runas, щоб новий процес був створений з новим токеном безпеки.
Припустимо, група AD користувачеві призначалася для надання доступу до мережевого каталогу. Спробуйте звернутися до нього по FQDN імені (наприклад, \\ msk-fs1.winitpro.loc \ distr) і перевірте, що TGT тікет був оновлений:
klist tgt
Мережевий каталог, до якого був наданий доступ через групу AD, повинен відкритися без перелогіна користувача (!!! обов'язково використовувати FQDN ім'я).