通过模拟访问映射的网络驱动器
access mapped network drive through impersonation
使用ImpersonateLoggedOnUser
Windows API模拟当前用户后,是否无法从服务访问映射的网络驱动器(在用户会话中映射)?
ImpersonateLoggedOnUser
函数不模拟用户的整个登录会话,只模拟用户的安全上下文。这只是使用模拟无法完成的许多事情之一。
我想您可能能够通过复制用户的登录令牌(从他们的一个交互进程中获得),然后使用它来调用CreateProcessAsUser
函数来实现这一点。然后,您将启动一个进程,该进程将使用映射的网络驱动器。我不完全确定这是否可行,因为我从来没有这样做过,但理论上似乎是可能的。
当然,这就引出了一个问题,为什么你需要走这样一条迂回的路线。作为一个标准的Windows应用程序,一开始只在用户的交互过程中运行代码会非常明智。
这不是服务的目的。服务不支持映射的网络驱动器。如果您想从服务中访问网络资源,您应该只使用UNC路径。
相关文章:
- 我的神经网络不起作用 [XOR 问题]
- GetShortPathName在网络驱动器上使用中文文件夹时失败
- 通过网络、跨平台传递std::变体是否安全
- 如何在MNIST上提高网络运行的准确性
- Active Directory:从网络服务帐户下运行的Windows服务调用ADsOpenObject时失败
- OpenCV 4.1.2 - 从网络摄像头获取帧并将其拆分
- 使用OpenCV和覆盆子上的多个网络摄像头拍摄延时摄影,出现多个V4L错误
- 神经网络不学习.卡在50%
- 阻止访问映射的网络驱动器
- 在使用高架特权运行时,如何正确检测网络驱动器
- 如何使用文件系统minifiter在网络共享驱动器上阻止文件覆盖
- 使用Qstorageinfo获取网络驱动器的名称
- 通过模拟访问映射的网络驱动器
- 使用 c++ 在 Linux 中挂载网络驱动器
- 使用 Qt 挂载网络驱动器
- Visual Studio 2015 git推送网络驱动器
- 如何在网络共享驱动器上使用sqlite3数据库?
- 检测未用于映射网络共享的驱动器号
- c++代码模拟Windows下的虚拟映射网络驱动器
- 我如何使用刚刚在网络上映射的驱动器?(c++)