1

我希望能够将值写入位于 HKEY_CURRENT_USER\Software\Policies\ 中的用户策略键 - 但此位置只能由管理员用户写入。

我有一个以用户身份运行的应用程序和我控制的系统上的一个服务。我希望应用程序告诉服务它以哪个用户身份登录,然后让服务进入并写入该用户策略部分。

做这个的最好方式是什么?冒充用户?我可以克隆用户令牌并将其发送到服务,还是有办法找到从 HKEY_USERS 到用户策略部分的完整路径?

非常感谢。

4

2 回答 2

1

用户配置文件HKEY_USERS由用户的“安全标识符”组织。这个安全标识符可以通过ProfileImagePath遍历HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList. (用户帐户以 开头S-1-5-21。这将用户名链接到安全标识符。然后您可以HKEY_USERS使用获得的安全标识符访问用户。

于 2013-06-11T17:20:44.340 回答
0

这是我最后所做的:

  1. 在应用程序中查找当前用户 SID(OpenProcessToken、GetTokenInformation、ConvertSidToStringSid)
  2. 将字符串 SID 传递给服务
  3. 更改 HKEY_USERS{SID}\Software\Policies
于 2013-06-12T15:27:46.407 回答