假设我们有c:\ DirA只能由User1读取,而c:\ DirB只能由User2写入。两个凭证都是知道的。
如何直接将文件从DirA复制到DirB?
答案 0 :(得分:1)
假设进程在第一个用户的上下文中运行,请运行LogonUser
以获取第二个用户的安全令牌。生成一个线程并调用ImpersonateLoggedOnUser
,将令牌作为参数传递。第二个主题可以访问DirB
。读取第一个线程中的数据,将它们传递给第二个线程并从那里写入。
如果您运行的用户具有备份或还原权限,则更简单的方法是使用OpenProcessToken
后跟AdjustTokenPrivileges
激活它们。