我正在尝试使用 WMI 连接到域上的远程 Windows 服务器计算机。以登录域用户身份启动时连接正常,但以本地管理员身份启动时,它会失败。有没有办法告诉应用程序在以管理员身份启动时使用较低的域帐户进行连接?(也不提示输入用户/密码。)
我试过了:
WindowsIdentity.GetCurrent().Impersonate();
但即使 GetCurrent 将域用户显示为当前用户,它似乎也不起作用。
我使用Uwe Keim 的这段代码成功地模拟了其他域帐户。
看一下WindowsImpersonationContext
- 它在切换线程用户上下文时对我来说很可靠。它直接与Windows API对话。