通过不同的管理员账户写入当前用户的注册表

通过不同的管理员账户写入当前用户的注册表

我有 2 个用户:

  • Domain\Me(域用户)

  • .\MeAdmin(本地管理员)

我经常需要出于多种目的(例如受信任的站点、覆盖策略等)更新我的注册表。

例如

[HKEY_CURRENT_USER\SOFTWARE\Policies\Microsoft\Windows\CurrentVersion\Internet Settings\ZoneMap\Domains\gov.pt]

[HKEY_CURRENT_USER\SOFTWARE\Policies\Microsoft\Windows\CurrentVersion\Internet Settings\ZoneMap\Domains\gov.pt\portaldasfinancas]
"https"=dword:00000001
"http"=dword:00000001

我的问题在于,有人告诉我,我无法让自己(域帐户)成为本地管理员,我必须使用独立的本地管理员帐户进行所有管理员调整。

问题是,如果我以用户 .\MeAdmin 的身份运行它,它将运行当前用户 MeAdmin 而不是用户 Domain\Me;如果我以 Domain\Me 的身份运行,我会遇到权限墙。

有没有办法分配 Domain\Me 权限来编辑注册表而无需成为管理员,或者通过本地管理员更新该帐户的当前用户?

注意:我已阅读有关远程注册表连接的信息,但我希望仍将其作为脚本/shell 运行以实现自动化目的。

更新: 当我运行域用户(所有 HKEY_CURRENT_USER 条目)时:

在此处输入图片描述

答案1

要访问另一个用户的注册表:

  1. 您必须使用完整路径 – 您需要HKEY_USERS\<yourSID>而不是HKEY_CURRENT_USER(它只是前者的符号链接),同样地HKEY_USERS\<yourSID>_Classes而不是HKEY_CLASSES_ROOT。使用whoami /user来找出您的 SID。

  2. 必须加载(安装)注册表配置单元 – 每个用户的注册表都存储在自己的ntuser.dat文件(HKCU)和UsrClass.dat(HKCR)中,与系统注册表分开(登录/注销时加载/卸载)。

    如果目标用户未登录,您可以使用reg load或类似的 Regedit 菜单项在 HKU 下挂载他们的 ntuser.dat(但不要忘记稍后卸载它,否则该用户可能无法登录)。

  3. 注册表项(文件夹)必须具有允许其他用户写入的正确权限 - 它们的工作方式与文件权限大致相同;打开 Regedit,右键单击文件夹,选择“权限...”,然后添加执行修改的用户。

相关内容