如何模仿用户但仍保持管理员权限

时间:2016-01-11 16:09:47

标签: winapi service

我有一个作为本地系统运行的服务。 在服务中,我需要在所有登录用户的上下文中执行一些操作(调用NetworkIsolationSetAppContainerConfig - 尝试解决Windows 8-10中的隔离免除问题)。 所以我用WTSEnumerateSessions迭代用户并尝试了两种方法:

  1. 模拟 - WTSQueryUserToken获取用户令牌,DuplicateTokenEx复制用户令牌,SetThreadToken使用它。

  2. 不同的流程 - 我创建了一个调用NetworkIsolationSetAppContainerConfig的不同流程,在我的服务中,我使用WTSQueryUserTokenDuplicateTokenExCreateEnvironmentBlock和CreateProcessAsUserW来运行此流程在用户的背景下。

  3. 两种方法都因Windows 10上缺少权限(错误编号5 - 访问被拒绝)而失败。 但是,当我以管理员模式运行我的Visual Studio并尝试运行此功能时,一切正常。 我能做什么?如何在用户的上下文中运行该功能但保持服务管理员权限? 感谢

0 个答案:

没有答案