Перестали применяться пользовательские политики Active Directory на Windows Server 2008 R2

После обновления от Microsoft MS16-072 (KB3163622) перестают применяться пользовательские политики, если у учетной записи компьютера нет прав на чтение данной политики.

Какие симптомы?

  1. В выводе команды » gpresult /h GPResult.html» присутствуют странные значения версий SYSVOL у политик в разделе «Примененные объекты групповой политики» (например: ( AD (26), Sysvol (65535))
  2. В выводе команды » gpresult /h GPResult.html» некоторые политики попали в раздел «Отклоненные объекты групповой политики» с причиной отказа «Недоступно», а вместо имени политики, написан их ID.
  3. Политики, которые настроены на пользователя и у которых в фильтрах безопасности удалена группа «Прошедшие проверку» — отклонены и не работают.

В полной статье разберем что это и как побороть.

В чем суть?

Майкрософт изменила принцип применения политик: когда раньше пользовательские политики загружались в контексте безопасности пользователя, теперь они загружаются в контексте безопасности учетной записи компьютера, соответственно, если у компьютера нет прав на чтение политики, то и применить её он не сможет.

Что делать?

Первое, что необходимо сделать — это изменить права на делегирование самих объектов групповых политик. Проще всего это сделать с помощью «Windows PowerShell Modules» одной командой, выполненной с контроллера домена:

Get-GPO -All | Set-GPPermissions -TargetType Group -TargetName "Компьютеры домена" -PermissionLevel GpoRead

В результате выполнения данной команды на все политики, присутствующие в домене будет прописана группа доступа «Компьютеры домена» с правами на чтение.

Изменение схемы — Group-Policy-Container

Дальше неплохо бы переопределить умолчания, чтобы не делать каждый раз тоже самое для вновь созданных GPO.

Для того, чтобы мы могли править умолчания, ваша учетная запись должна состоять в группе «Администраторы схемы». Добавляем через оснастку «Active Directory — Пользователи и компьютеры»

Примечание: Все ниже перечисленные действия выполняются на доменном контроллере.

Далее переходим к изменениям в схеме: открываем оснастку «Редактирование ADSI»

Щелкаем ПКМ по «Контекст именования по умолчанию» и выбираем «Параметры…»

После этого выбираем «Схема» в поле «Выберите известный контекст именования» и жмем «Ок»:

Далее находим и открываем объект «CN = Group-Policy-Container»:

И откроем его атрибут defaultSecurityDescriptor и добавим следующее значение в конец:  (A;CI;LCRPLORC;;;DC)

Пояснение по строке:
Тип доступа: A = Access Allowed
Флаг ACE: CI = Container Inherit
Разрешения: LC = List Contents RP = Read All Properties LO = List Object RC = Read Permissions
Субъект доступа: DC = Domain Computers

Чтобы применить изменения, нужно перезагрузить схему. Если оснастка «Схема Active Directory»отсутствует, зарегистрируйте библиотеку:

regsvr32 schmmgmt.dll

Открываем MMC консоль и открываем оснастку  «Схема Active Directory» . Щелкаем ПКМ по «Схема ActiveDirectory» и выберите «Перезагрузить схему»:

Проверяем работу внесенных изменений. Создаем новую групповую политику (GPO), переходим на вкладку «Делегирование», видим что группа «Компьютеры домена» с правами «Чтение» присутствует.

Полезные ссылки:

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте как обрабатываются ваши данные комментариев.