8

是否可以在不提供用户名/密码的情况下模拟用户?基本上,我想CSIDL_LOCAL_APPDATA使用该功能为用户(不是当前用户)获取ShGetFolderPath()。我目前拥有的只是该用户的 SID。

4

2 回答 2

9

您可以通过调用 ZwCreateToken 在不提供密码的情况下模拟用户。请参阅本文中的 CreatePureUserToken 函数: 基于 GUI 的 RunAsEx 您必须以管理员(或 LocalSystem)身份运行才能使其工作。

另一种技术是使用 Windows 子身份验证包。这允许您覆盖 Windows 内置身份验证并允许 LogonUser 成功,即使没有提供密码。请参阅此知识库文章

于 2009-05-12T01:45:05.693 回答
6

不,您必须调用 Win32 API LogonUser函数来获取 Windows 帐户令牌,以便您可以模拟。

于 2008-09-26T01:30:39.197 回答