Мне нужно установить параметры локальной групповой политики и локальную политику безопасности для пары машин, которые не находятся в домене Windows. До сих пор я делал это вручную, задавая ключи в gpedit. В связи с переходом на Windows 10 я хотел бы автоматизировать это и использовать пакетный сценарий или сценарий PowerShell для их установки. Было бы очень хорошо, если бы это можно было сделать без сторонних инструментов.
Как я могу установить эти политики с помощью Powershell или командного файла?
Заранее благодарим за ответы!
Питер
Вы можете сделать это в PowerShell, используя Set-ItemProperty
о провайдере реестра; например чтобы отключить доступ к Центру обновления Windows, вы можете запустить:
Set-ItemProperty -Path HKLM:\Software\Policies\Microsoft\Windows\WindowsUpdate -Name DisableWindowsUpdateAccess -Value 1
(HKLM: \ является стандартным псевдонимом для пути к диску реестра "Microsoft.PowerShell.Core \ Registry :: HKEY_LOCAL_MACHINE \".)
Список ключей реестра групповой политики можно загрузить в Microsoft по адресу Загрузить Справочник по параметрам групповой политики для Windows и Windows Server | Центр загрузок Microsoft
PolicyFileEditor представляет собой модуль PowerShell для управления файлами локального GPO registry.pol.
Брэндон Пэджетт предоставляет пример использования:
$RegPath = 'Software\Policies\Microsoft\Windows\Control Panel\Desktop'
$RegName = 'ScreenSaverIsSecure'
$RegData = '1'
$RegType = 'String'
Set-PolicyFileEntry -Path $UserDir -Key $RegPath -ValueName $RegName -Data $RegData -Type $RegType
Есть несколько CmdLet, которые можно использовать для управления объектами групповой политики (Create, Get-Info, ...). Вы можете легко перечислить их, используя
Get-Command -Module GroupPolicy
Самые важные из них:
New-GPO -Name "My Own GPO" -Comment "This is a new GPO for me"
New-GPO -Name "My Own GPO" | New-GPLink -Target "ou=clients,dc=ad,dc=contoso,dc=com"
Remove-GPLink -Name "My Own GPO" -Target "ou=clients,dc=ad,dc=contoso,dc=com"
Get-GPO -Name "My Own GPO"
Get-GPO -Name "My Own GPO" | Get-GPOReport -ReportType HTML -Path c:\temp\report.html
Set-GPRegistryValue -Name "My Own GPO" -Key "HKCU\Software\Policies\Microsoft\Windows\Control Panel\Desktop" -ValueName ScreenSaveTimeOut -Type DWord -Value 300
Get-GPRegistryValue -Name "My Own GPO" -Key "HKCU\Software\Policies\Microsoft\Windows\Control Panel\Desktop"
Remove-GPRegistryValue -Name "My Own GPO" -Key "HKCU\Software\Policies\Microsoft\Windows\Control Panel\Desktop" -ValueName ScreenSaveTimeOut
Invoke-GPUpdate -Computer "ad\server1" -Target "User"
Get-GPResultantSetOfPolicy -Computer dc1 -ReportType HTML -Path c:\temp\dc1rsop.html
Это было взято из Вот.