我正在尝试通过命令行编辑此注册表项 - 已经搜索了很长时间但找不到任何东西。
目前确实遇到问题,所以任何帮助都将不胜感激。我不介意使用 PowerShell 或任何调用第三方工具的东西 - 只是想通过命令行进行更改。
原因是本地管理员默认具有只读权限。我想将其更改为完全控制。我可以在 2 秒内在 GUI 中完成此操作,但命令行则是另一回事。
HKEY_CLASSES_ROOT\CLSID\{323CA680-C24D-4099-B94D-446DD2D7249E}\ShellFolder
答案1
有一篇关于如何在 PowerShell 中执行此操作的出色概述这里。
本质上,您可以像使用任何其他路径一样在 PowerShell 中使用Get-Acl
和。Set-Acl
$acl = Get-Acl HKLM:\SOFTWARE\stuff
$rule = New-Object System.Security.AccessControl.RegistryAccessRule(
"Domain\user", "FullControl", "ContainerInherit,ObjectInherit", "None", "Allow")
$acl.SetAccessRule($rule)
$acl |Set-Acl -Path HKLM:\SOFTWARE\stuff
答案2
做注册程序满足您的需求吗?您可以编写一个更改权限的 RegIni 脚本,然后以该脚本作为参数调用 RegIni。
例如,如果您只希望管理员对该密钥具有完全访问权限,则脚本将如下所示:
HKEY_CLASSES_ROOT\CLSID{323CA680-C24D-4099-B94D-446DD2D7249E}\ShellFolder [1]
不过,您可能还想授予系统访问密钥的权限,并可能授予其他所有人只读访问权限,在这种情况下,安全后缀将是
[1 8 17]
您可以在下表中找到安全后缀编号:
1 - Administrators Full Access
2 - Administrators Read Access
3 - Administrators Read and Write Access
4 - Administrators Read, Write and Delete Access
5 - Creator Full Access
6 - Creator Read and Write Access
7 - World Full Access
8 - World Read Access
9 - World Read and Write Access
10 - World Read, Write and Delete Access
11 - Power Users Full Access
12 - Power Users Read and Write Access
13 - Power Users Read, Write and Delete Access
14 - System Operators Full Access
15 - System Operators Read and Write Access
16 - System Operators Read, Write and Delete Access
17 - System Full Access
18 - System Read and Write Access
19 - System Read Access
20 - Administrators Read, Write and Execute Access
21 - Interactive User Full Access
22 - Interactive User Read and Write Access
23 - Interactive User Read, Write and Delete Access
不用说,您应该在第一次玩这个之前做好备份,并且可能在虚拟注册表项上练习,以避免任何不幸的事故。