如何将文件另存为其他用户

And*_* A. 1 c# winforms

是否可以作为登录用户运行Windows窗体应用程序,但是使用不同的用户凭据使应用程序保存文件?

我知道以下是不正确的,但我的意思是这样的:

var userWithPrivileges = new NetworkCredential(userName, password);
File.Copy(sourceFileName, destFileName, overwrite: true, userWithPrivileges);
Run Code Online (Sandbox Code Playgroud)

gbj*_*anb 5

你需要ImpersonateUser调用.请注意,您不能"只是"保存为该用户,您首先需要具有该用户的安全访问权限 - 或者如果任何人可以伪装成具有2行代码的任何其他人,那么这将是一个相当大的安全漏洞!

因此,您需要一个代表该用户的安全访问令牌,通常通过调用LogonUser获得,MSDN链接提供示例代码.