如何通过ASP.NET MVC应用程序访问NAS?

时间:2012-04-27 10:02:57

标签: asp.net-mvc-3 iis-7 fileserver

我想通过我的ASP.NET MVC应用程序访问文件服务器(NAS),但找不到以正确方式执行此操作的方法。

到目前为止我所做的是:

  • 在我的NAS上的目录中创建了具有读/写权限的用户
  • 在我的IIS服务器上创建了一个虚拟目录,该目录使用先前定义的用户凭据连接到nas目录

现在,如果我导航到我的虚拟目录(AppliCationIPAdress / NAS),我会自动重定向到\ NASIPAdress \ My \ Directory。在NAS登录通知中,我得到了一些信息,有些人使用给定的凭证连接到我的目录=>应该是这样的

但是,如果我通过我的MVC应用程序访问NAS目录(无论我使用UNC还是虚拟目录重定向),我都会获得访问被拒绝的错误消息,并且在NAS登录通知中没有列出我准备好的useraccount,但我的网络服务器是试图登录的用户。

        var dirName = Server.MapPath("~/NAS/Dir/");
        ViewBag.Message = System.IO.Directory.GetFiles(dirName );

如果我想通过我的mvc应用程序访问文件服务上的文件,有人可以解释为什么会发生这种情况以及我该怎么办?

2 个答案:

答案 0 :(得分:0)

您必须授予服务帐户访问文件区域的权限,或者与拥有权限的用户一起运行应用程序

答案 1 :(得分:0)

有用的是:

  1. 在NAS和IIS服务器中具有相同的用户帐户和密码。
  2. 为您的Web应用程序创建应用程序池,或使用默认应用程序池,并将用户帐户更改为前面提到的相同帐户。脚步:
    • 转到 IIS管理器
    • 单击应用程序池
    • 右键单击分配给您的Web应用程序的应用程序池,然后选择高级设置...
    • 流程模型部分,将身份字段更改为上述用户帐户。
    • 点击字段右侧的 3个点按钮
    • 选择自定义帐户,然后点击设置... 按钮
    • 设置用户名密码密码确认(上述用户帐户相同。

希望有帮助!

FranciscoG