设置上传文件的权限以允许在ASP.NET中读取



我有一个ASP。. NET web应用程序中,我试图打开位于我的web浏览器的子目录内的文本文件。文本文件通过使用SAFileUp的相同web应用程序上传。我正在使用FileInfo对象来读取文本文件…

Response.TransmitFile(fileInfo.FullName)

令人费解的是,当我执行这行代码时,我得到了一个异常。

Access to the path 'C:webrootxxxxuploadsfilename.txt' is denied 

我已经给了uploads文件夹,其中文本文件被上传,read/write/execute权限IUSRIIS_IUSRS帐户和权限继承到下面的子文件夹。有趣的是,我试图加载的实际文本文档没有IIS_IUSRS的权限设置,而IUSR确实有读/写/执行。只要我将"read"权限添加到IIS_IUSRS,我就可以读取文件了。

让我困惑的是,我本以为文件会继承父文件夹的权限,但显然不是。上传过程中如何设置上传文件的权限,以便稍后打开文件进行阅读?

嗯…我找到了答案。基本上,上传组件SAFileUp使用缓存上传文件的"Temp"目录来设置上传文件的权限。在我的例子中,这个目录是C:Windowstemp。我所做的就是给帐户IIS_IUSRS READ访问C:Windowstemp目录,我能够访问上传的文件没有问题。

这是SoftArtisans网站上的一篇文章,它为我提供了线索,并帮助我找到了上传文件缓存到的目录。

http://support.softartisans.com/kbview_776.aspx

相关内容

  • 没有找到相关文章

最新更新