Я пытаюсь создать сценарий запуска, который можно распространять через GPO на ноутбуки (под управлением 64-битной Windows 7 Professional), чтобы ни один пользователь (включая локальных администраторов) не мог отображать пароли для подключенных беспроводных сетей. Я делал это в основном, но не могу понять, как удалить пользователей / группы из записей безопасности на ключе.
Это то, что у меня есть до сих пор, оно в основном определяет переменные и меняет владельца ключа на локальную группу «Администраторы».
$hkey = "HKEY_CLASSES_ROOT\AppID\{86F80216-5DD6-4F43-953B-35EF40A35AEE}"
$exe = "\\server\share\SetACL.exe"
& $exe -on $hkey -ot reg -actn setowner -ownr n:'Administrators'
Конечный результат сценария должен удалить "BUILTIN \ Administrators", "BUILTIN \ Users", "SERVICE \ TrustedInstaller" из записей безопасности, оставив только "BUILTIN \ SYSTEM" с прочитанным разрешения, а затем забрать разрешение у SYSTEM и передать их BUILTIN \ Administrators. Эта конфигурация протестирована и работает.
Чтобы использовать get-acl, вам нужно сопоставить ps-диск с ульем hkcr (потому что это псевдоним, указывающий на оба {hklm, hkcu} \ SOFTWARE \ Classes?), Так что у меня есть это для этого, если get-acl даже необходимо для удаления разрешений:
New-PSDrive -Name HKCR -PSProvider Registry -Root HKEY_CLASSES_ROOT
$dkey = "HKCR:\AppID\{86F80216-5DD6-4F43-953B-35EF40A35AEE}"
$acl = get-acl $dkey
Я так много нашел в Интернете о добавлении разрешений на запрет, но я не хочу добавлять запрет, я просто хочу удалить записи, как если бы щелкнул «удалить» через свойства> безопасность.
Спасибо!
Вот пример кода для удаления определенного пользователя из ключа реестра.
$acl = Get-Acl -Path HKLM:\SOFTWARE\Rajiv
$AccessRule = New-Object System.Security.AccessControl.RegistryAccessRule ("MYPC\TEST", "FullControl", "Allow")
$acl.RemoveAccessRuleAll($AccessRule)
$acl | Set-Acl -Path HKLM:\SOFTWARE\Rajiv
Приведенный выше код удаляет пользователя "MYPC\TEST"
пользователь из набора разрешений HKLM:\SOFTWARE\Rajiv
Ключ
Управление списками ACL файловой системы с помощью Powershell