如何保护asp.net MVC中的目录?

时间:2009-10-09 14:13:15

标签: asp.net-mvc iis authorization

在asp.net mvc中保护目录的最简单方法是什么?

目前我有一个misc文件夹,属于该网站的众多用户。理想情况下,我不希望一个用户能够在浏览器中键入其中一个文档的URL并且可以访问它。这些文件只能通过控制器操作下载,该操作将通过验证用户凭据然后返回文件来授权下载。

先谢谢

2 个答案:

答案 0 :(得分:7)

将文件存储在应用程序数据中,让控制器操作读取文件并将其呈现为FileResult。这样,文件永远不会直接暴露。

答案 1 :(得分:2)

我对这些的解决方案通常是让该目录存在于网络访问的能力之外。例如,不要将它们存储在c:\ inetpub \ wwwroot \ docs中,只需将它们存储在C:\ inetpub \ docs。

确保您的控制器已读/写?特权。

当我添加/删除文件夹时,这为我提供了最佳解决方案,因为我的主机限制了我关闭文件监视器的能力。事实证明,删除应用程序的子文件夹会导致应用程序池回收> _<