根据asp.net上的访问级别限制文件下载

时间:2011-09-28 10:07:12

标签: asp.net asp.net-mvc-3 c#-4.0

我有一个用asp.net mvc3制作的网络应用程序。可以使用该应用程序上载和下载文件。上传的文件将存储在Web根目录下的某个文件夹中。我希望允许下载文件给那些只能访问这些文件的人。没有人能够通过直接粘贴文件URL来下载文件。

我使用有限IIS访问的共享主机。那么实现这一目标的最佳方法是什么?

1 个答案:

答案 0 :(得分:1)

您目前如何在访问权限上存储数据?听起来您无法使用IIS来控制对文件的访问,并且必须自己处理它。

在这种情况下,不是直接链接到文件,而是应该将文件存储在Web根目录之外,然后使用GET方法处理通过ASP.NET MVC进入文件的请求。此时,您可以检查用户的凭据,如果他们有权访问,您可以提供该文件。

我对它不太熟悉,但看起来ASP.NET MVC使得提交文件变得非常简单,能够返回FileContentResultController.File方法支持(文档{ {3}})。

here看起来是一个很好的开始,您只需要将凭据检查逻辑插入到Get方法中。