我试图从ASP.NET页面访问网络驱动器。从技术上讲,这是一个SharePoint应用程序页面(_layouts/mycompany/mypage.aspx),但我相信这些原则是相同的。访问网络驱动器时,ASP.NET应用程序获取system.unauthorizedaccessexception
string filePath = @"\\companyshare\temp\test.txt";
FileStream fs = new FileStream(filePath, FileMode.Open, FileAccess.Read);
当我打的代码的第二线以上我得到的错误:
Access to the path '\companyshare\temp\test.txt' is denied.
此网站的应用程序池在一个域帐户下运行(MyCompany的\ adminacct)。 MYCOMPANY \ adminacct可以访问文件\ companyshare \ temp \ test.txt。我已经确认,通过使用MYCOMPANY \ adminacct凭据登录到服务器并使用代码中的相同路径导航到文件。
我运行IIS 7.5
问题
怎么会在上面的代码仍然得到拒绝访问,即使该应用程序池帐户有权访问的文件夹和文件?
有没有办法确认我的代码实际上是在用我认为正在使用的凭据来访问该文件?
这听起来很基本,但您如何确认您在特定帐户下运行?我想确认,无论我做什么改变都在做我期望他们做的事情。 – RWL01
我发布了一篇很好的文章。我用它在过去取得了巨大的成功。不知道您使用的是哪个版本的IIS - 您可能需要在您的问题中注意这一点。 –
它的工作原理就是这么简单。谢谢。 – RWL01