Я бы хотел войти .csv
(или любой другой читаемый формат) всех моих пользователей AD и политики, которым они должны соответствовать (тип аутентификации, необходимый каждому пользователю, его свойства ведения журнала событий и даже то, какое шифрование ему разрешено использовать в BitLocker).
Get-ADUser
и CSVDE
команды не дают мне всех политик.
В основном мне нужно какое-то слияние между GPO для каждого пользователя ...
Единственное «решение», которое я нашел, - это команда GPResults
для каждого пользователя, но это работает, только если пользователи вошли в систему, что недостаточно.
Спасибо, Нир
Групповая политика:
Политика пользователя зависит не только от объекта пользователя - на нее могут влиять wmi фильтры, группы иностранных доменов или Обеспечение механизма аутентификации, что означает, что ваше членство в группе изменяется в соответствии с тем, как вы указали свои учетные данные. Короче говоря, единственный 100% точный способ - это войти в систему и проверить результаты GP.
Вы можете попробовать результат GP "планирование", то есть у всех расширений спрашивается: «Что бы вы сделали, если бы этот пользователь вошел в систему», но они должны поддержать это (не говоря уже о том, что он установлен на вашем компьютере), и это не так просто, как скрипт, как результат «ведения журнала» GP - для него нет простой команды PowerShell, AFAIK, и это нужно делать с помощью WMI.
Другие вещи:
Обратите внимание, что некоторые из указанных вами вещей вообще не являются расширениями GP. Например, политика паролей устанавливается на уровне DC, даже если она мелкозернистый.
Что ты должен делать: На вашем месте я бы составил список вещей, которые важны для меня (вы начали это делать - шифрование битлокерами, политика паролей, групповая политика), и относился бы к каждому по-разному (поскольку к ним нужно относиться по-разному). В итоге вы получите набор данных о каждой политике, которые вы можете рассмотреть для слияния (я предполагаю, что вы этого не сделаете, так как это не принесет никакой новой информации).
Важной частью сценария является сбор данных (а не обобщение), поскольку это часть, которая требует утомительной работы, а не творческого мышления.
Я согласен с Nitz, и если у вас есть обработка обратной связи для пользовательских настроек, что целевой компьютер, powershell или wmi не могут этого догадаться, немного, почему gpresult требует, чтобы пользователь вошел в систему, чтобы вывести фактическую политику.
Вы можете использовать powershell командлет групповой политикис.
Вы можете получить информацию о пользователях с помощью Get-ADUser.
Затем вы можете следить за этим, используя Get-GPInheritance на пользователей OU.
После этого вы можете запустить Get-GPOReport на результирующих объектах групповой политики.
Я не пробовал это раньше, но это должно быть возможно с новыми командлетами.
Однако для этого потребуется немало работы и исследований и, возможно, немало ответов, которые вы ищете.
В зависимости от того, насколько велика ваша среда и сколько у вас групповых политик, может быть проще следовать ответу Нитца.