在 Windows 上模拟域用户后,以管理员身份运行的应用程序无法加载配置文件

use*_*217 5 impersonation user-profile

我正在尝试加载用户配置文件(使用LoadUserProfile- http://msdn.microsoft.com/en-us/library/windows/desktop/bb762281%28v=vs.85%29.aspx),但是当用户是Windows域用户。

该应用程序以管理用户(不是系统帐户,以系统帐户运行的服务中的相同代码运行)运行。

如果我要访问的用户是本地用户,则相同的代码可以工作。

LoadUserProfile 和 Windows 域用户有任何限制吗?LoadUserProfile 返回访问被拒绝。是否有任何政策限制 API?

我的代码执行以下操作:

  1. 登录用户
  2. LoadUserProfile - 此操作失败并拒绝访问。
  3. 模拟登录用户

我不确定问题是否 100% 与我的代码相关,因为如果我运行

runas /user:domain\user cmd.exe 我遇到了同样的失败:“访问被拒绝”

因此,似乎存在控制域用户行为的策略。