我有一个ASP.NET MVC应用程序尝试使用文件流和File.OpenRead()读取文件。 当文件的路径是同一工作组上的共享,并且我为共享提供对NETWORK SERVICE的访问权限时,这可以完美地工作。
但是,当共享的路径是LAN中远程共享的UNC路径时,对“Everyone”打开读取权限时,“File.OpenRead()”方法会抛出异常“无法找到路径的一部分“。
在我的测试用例中,我正在本地调试,ASP.NET MVC应用程序被赋予一个UNC路径,指向它实际运行的计算机。 它是我的C驱动器上的一个共享,被“共享”,具有“Everyone”权限以进行读取访问。
IIS中是否存在需要配置的内容? 如果我尝试模拟,在这种情况下,模拟并不重要,因为NETWORK SERVICE是用户在同一工作组中共享时尝试访问文件的。
答案 0 :(得分:0)
验证共享权限,以确保为NETWORK SERVICE帐户授予权限,以便能够访问共享。共享以及实际文件/文件夹需要权限。
[]的
答案 1 :(得分:0)
IIS以不同方式访问远程共享时处理身份验证。请看一下这篇文章:UNC Authentication in IIS 6.0。或者搜索IIS UNC site:microsoft.com