如何对文件系统(ASP.NET Web应用程序目录)中的文件进行纠正访问



正在在ASP.NET Web应用程序上工作。在该用户可以上传文档,并且在需要时可以查看相同的文档。这些上传保留在文件系统中(路径: - webApp/uploads/docs )。仅当用户是文档的所有者或上传的用户。

我的问题是:带有此 WebApp/uploads/docs/doc1.doc
的文件只有该文档的上传者/所有者才能访问路径。

其他应用程序用户必须限制访问此路径。

so,我可以在将此文件提供给其他用户之前先进行检查(用户是否是所有者)。?

我会建议您将文档放在网站目录之外,因为这使它们暴露于未经授权的下载中。

至于您需要的检查,您可以为您的文档创建一个通用处理程序(*.ASHX),该文档将验证文档所有者并将内容仅服务于允许的用户。

HTTP处理程序和HTTP模块概述

您可以通过web.config实现此目标在web.config中添加元素。

在元素中,添加配置元素和配置元素。使用用户属性指定用户名的逗号限制的列表。您可以使用问号(?)作为与任何用户名相匹配的通配符。例如,以下代码拒绝访问除User1和user2:

以外的所有用户的访问。
<authorization>
    <allow users="user1, user2"/>
    <deny users=”?”/>
</authorization>

最新更新