我在HttpHandler中使用这段简单的代码:
Directory.CreateDirectory(@"\\srv-001\dev\folderToCreate\");
我收到 UnauthoridezAccessException ,告诉我该路径的访问被拒绝。
从这里开始,我在C#中创建一个Dos应用程序,做同样的事情,然后我就可以创建文件夹了。所以,我认为可能是IIS运行在与我不同的用户身上。我去了IIS并将应用程序池更改为自定义用户。但是,不幸的是,我得到了同样的例外。
我尝试在我的计算机上创建一个Share文件夹,然后我可以创建目录。此外,在调试时,我可以看到System.Threading.Thread.CurrentPrincipal.Identity的AuthenticationType为“”,IsAuthenticated为false,并命名为“”。
因此,通过所有这些测试,我可以得出结论,接收文件的HttpHandler由于某些安全访问而无法创建目录。
如何能够对HttpHandler进行盛大访问,以便能够在网络文件夹中创建目录(和文件)?
答案 0 :(得分:0)
如果你在iis 6上,我不记得清楚,但我会试一试。没有iis 6在我面前验证,但我记得有一个匿名访问按钮,你可以点击它会弹出一个对话框,你可以指定用户。不认为您可以选择使用应用程序池标识,并且必须明确指定帐户。