在专用网络上:
使用IIS 10,我有一个.net核心Web应用程序,需要访问网络共享上的文件。
网络共享具有访问权限,因此IIS需要使用浏览站点的人员的Windows身份验证来访问文件共享。
我应该如何配置池或Windows身份验证?我尝试使用许多组合(集成模式,经典模式,applicationpoolidentity,localsystem,localservice,Windows身份验证,NTML等)
这是我的代码
var file1 = @"\\xxx\yyy\file1.pdf";
var file2 = @"\\zzz\xxx\file2.pdf";
var directory = @"\\xxx\yyy\directory";
if (System.IO.File.Exists(file1))
{
ViewData["f1"] = "OK";
}
else
{
ViewData["f1"] = "KO";
}
if (System.IO.File.Exists(file2))
{
ViewData["f2"] = "OK";
}
else
{
ViewData["f2"] = "KO";
}
try
{
Directory.GetFiles(directory);
ViewData["f3"] = "OK";
}
catch (Exception ex)
{
ViewData["f3"] = ex.ToString();
}
结果是:
KO
KO
System.UnauthorizedAccessException:对路径“ xxx”的访问为 拒绝
(我的Windows用户可以访问前两个文件,但不能访问目录)