使用 C# 从 Web 应用程序打开文件夹,拒绝访问

Lea*_*ner 3 c# iis-7.5 windows-8 asp.net-mvc-5

我使用以下代码通过托管在同一服务器上的 IIS 7.5 上的 ASP.Net MVC 5.0 Web 应用程序从我屏幕上的服务器打开文件夹,服务器使用的是 Windows 8。

public void OpenFolder()
{
    System.Diagnostics.Process.Start(new System.Diagnostics.ProcessStartInfo() {
        FileName = "\\SERVERNAME\Public\Lists",
        UseShellExecute = true,
        Verb = "open"
    }); 
}
Run Code Online (Sandbox Code Playgroud)

当我在开发中运行我的应用程序时,这可以很好地打开文件夹,而在生产中出现拒绝访问错误。

我已将 IUSR 和 IIS_IUSRS 的所有权限与管理员、用户、网络、网络服务和其他几个用户一起授予该文件夹。但仍然没有运气。

如果有人以前遇到过同样的问题或知道如何解决这个问题,那么请给我一些启发并指导我。另外,我不擅长网络方面。

Ric*_*ard 5

在开发中(使用 IIS Express 之类的东西),运行您的代码的进程作为您的登录帐户运行。

但是一旦部署,它将以 IIS 应用程序池配置为的任何帐户运行。

另请注意,IUSR 等是本地帐户;在连接到网络资源(如共享)时,这将被视为来宾。为此,您需要将应用程序池作为域帐户(或在两台机器上使用匹配的用户名和密码的本地帐户)运行。