GPResult: диагностика применения групповых политик

  • Михаил
  • 12 мин. на прочтение
  • 52
  • 11 Dec 2014
  • 11 Dec 2014

Утилита GPResult.exe – представляет собой консольное приложение, предназначенное для анализа настроек и диагностики групповых политик, которые применяются к компьютеру и/или пользователю. В частности, GPResult позволяет получить данные результирующего набора политик (Resultant Set of Policy, RSOP), список примененных доменных политик (GPO), их настройки и детальную информацию об ошибках их обработки. Утилита входит в состав ОС Windows начиная со времен Windows XP.

В этой статье мы рассмотрим особенности использования GPResult для диагностирования работы и отладки применения групповых политик домена Active Directory.

Итак, чтобы получить подробную информацию о групповых политиках, которые применяются к объектам пользователю и компьютеру, и других параметрах, относящихся к инфраструктуре GPO, выполним команду:

Gpresult /r

Результаты выполнения команды разделены на 2 секции:

COMPUTER SETTINGS – раздел содержит информацию о GPO, действующих на компьютер (как объект Active Directory)

USER SETTINGS – пользовательский раздел политик (политики, действующие на учетную запись пользователя в AD)

Вкратце пробежимся по основным параметрам/разделам, которые нас могут заинтересовать в выводе GPResult:

Site Name – имя сайта AD , в котором находится компьютер

CN – полное каноническое пользователя/ компьютера, для которого были сгенерированы данные RSoP

Last time Group Policy was applied – время, когда последний раз применялись групповые политики

Group Policy was applied from – контроллер домена, с которого была загружена последняя версия GPO

Domain Name и Domain Type – имя и версия схемы домена Active Directory

Applied Group Policy Objects – списки действующих объектов групповой политики

The following GPOs were not applied because they were filtered out — не примененные  (отфильтрованные) GPO

The user is a part of the following security groups – доменные группы, в которых состоит пользователь

В нашем примере видно, что на объект пользователя действуют 4 групповые политики.

Если вы не хотите, чтобы в консоль одновременно выводилась информация и о политиках пользователя и о политиках компьютера, с помощью опции /scope можно вывести только интересующий вас раздел :

gpresult /r /scope:user

или

gpresult /r /scope:computer

Т.к. утилита Gpresult выводит свои данные непосредственно в консоль командной строки, что бывает не всегда удобно для последующего анализа, ее вывод можно перенаправить в буфер обмена:

Gpresult /r |clip

или текстовый файл:

Gpresult /r > c:\gpresult.txt

При включенном UAC запуск GPResult без повышенных привилегий выводит параметры только пользовательского раздела групповых политик. Если нужно одновременно отобразить оба раздела (USER SETTINGS и COMPUTER SETTINGS), команду нужно запускать в командной строке, запущенной с правами администратора. Если командная строка с повышенными привилегиями запущена от имени учетной записи отличной от текущего пользователя системы, утилита выдаст предупреждение INFO: The user “domain\user” does not have RSOP data. Это происходит потому, что GPResult пытается собрать информацию для пользователя, ее запустившего, но т.к. он в данный момент не выполнил вход (logon) в систему, информация RSOP для него отсутствует. Чтобы собрать информацию по пользователю системы, нужно указать его учетную запись:

gpresult /r /user:tn\edward

Кроме того, утилита GPResult может сгенерировать HTML-отчет по примененным политикам. В данном отчете будет содержаться подробная информация обо всех параметрах системы, которые задаются групповыми политиками и именами конкретных GPO, которые их задали (получившийся отчет по структуре напоминает вкладку Settings в консоли управления групповыми политиками – GPMC). Сгенерировать HTML отчет можно с помощью команды:

GPResult /h c:\gp-report\report.html /f

Чтобы сгенерировать отчет и автоматически открыть его в браузере, выполните команду:

GPResult /h GPResult.html & GPResult.html

GPResult может собрать данные и с удаленной компьютера, избавляя администратора от необходимости входа в удалению систему.  Формат команды будет такой:

Gpresult /s server-ts1 /r

При траблшутинге групповых политик стоит также обращать внимание на секцию: The following GPOs were not applied because they were filtered out. В этой секции отображается список GPO, которые по той или иной причине не применяются к этому объекту. Возможные варианты, по которым политика не применяются:

Filtering: Not Applied (Empty) – политика пустая (применять, собственно, нечего) 

Filtering: Denied (Unknown Reason) – скорее всего у пользователя/ компьютера отсутствуют разрешения на чтение/примененеие этой политики (разрешения настраиваются на вкладке Security в консоли GPMC (Group Policy Management Console)

Filtering: Denied (Security) - в секции Apply Group Policy  указан явный запрет в разрешении Apply group policy либо объект AD не входит в список групп в разделе Security Filtering настроек GPO

 

Итак, в этой статье мы рассмотрели особенности диагностики применения групповых политик с помощью утилиты GPResult и рассмотрели типовые сценарии ее использования. Утилиту GPResult  обычно используют в сочетании с консолью RSoP.msc, которая позволяет представить результирующий набор политик в графическом виде.