是否可以以登录用户身份运行 Windows 窗体应用程序,但让应用程序使用不同的用户凭据保存文件?
我知道以下是不正确的,但我的意思是这样的:
var userWithPrivileges = new NetworkCredential(userName, password);
File.Copy(sourceFileName, destFileName, overwrite: true, userWithPrivileges);
最佳答案
你需要 ImpersonateUser称呼。请注意,您不能“仅仅”保存为该用户,您首先需要对该用户具有安全访问权限——否则如果任何人都可以伪装成其他任何人并使用 2 行代码,那将是一个安全漏洞!
因此您需要一个代表该用户的安全访问 token ,通常通过调用 LogonUser 获得,MSDN 链接提供了示例代码。
关于c# - 如何将文件保存为不同的用户,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17996054/