如何出示凭据以打开文件
本文关键字:文件 何出示 | 更新日期: 2023-09-27 17:47:46
如何指定用户名和密码以便打开程序要阅读的文件?需要访问该文件的程序正从一个帐户运行,该帐户对文件所在的文件夹没有读取权限。程序是用C#和.NET2编写的,在XP下运行,文件在WindowsServer2003机器上。
您想要模拟一个有权访问该文件的用户。
我建议使用这样的类-http://www.codeproject.com/KB/cs/zetaimpersonator.aspx.它隐藏了所有令人讨厌的模拟实现。
using (new Impersonator("myUsername", "myDomainname", "myPassword"))
{
string fileText = File.ReadAllText("c:'test.txt");
Console.WriteLine(fileText);
}
我使用了Nuget包NuGetGallery|Simple Impersonation Library 1.1.0,但还有其他包;在模拟上搜索其他人。
使用交互式登录处理文件结构的示例用法:
using (Impersonation.LogonUser("{domain}",
"{UserName}",
"{Password}",
LogonType.Interactive))
{
var directory = @"''MyCorpServer.net'alpha'cars";
Assert.IsTrue(Directory.Exists(directory));
}
James的回答是在Nuget之前,在他后来拥有Nuget上下载量最大的软件包之前。讽刺啊
您可以模拟具有必要权限的用户。MSDN上有一篇文章描述了如何做到这一点。