繁体   English   中英

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

[英]Setting permissions of uploaded file to allow reading in ASP.NET

我有一个ASP.NET Web应用程序,在其中我试图打开位于我的Webroot子目录内的文本文件。 文本文件是使用SAFileUp通过同一Web应用程序上载的。 我正在使用FileInfo对象来读取文本文件...

Response.TransmitFile(fileInfo.FullName)

令人费解的是,执行此行代码时会引发异常。

Access to the path 'C:\webroot\xxxx\uploads\filename.txt' is denied 

我给了uploads文件夹,在该文件夹中uploads了文本文件, IIS_IUSRS IUSRIIS_IUSRS帐户都具有read/write/execute权限,并且该权限已继承到下面的子文件夹中。 有趣的是,我尝试加载的实际文本文档没有为IIS_IUSRS设置任何权限,而IUSR确实具有读/写/执行权限。 将“读取”权限添加到IIS_IUSRS便可以读取文件。

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

好吧..我找到了答案。 基本上,上载组件SAFileUp使用“ Temp”目录来缓存上载文件,以设置上载文件的权限。 在我的情况下,该目录为C:\\Windows\\temp 我所做的就是授予IIS_IUSRS帐户对C:\\Windows\\temp目录的读取权限,并且我能够毫无问题地访问上载的文件。

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

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM