如何设置 ASP.NET 服务器以防止某些文件可用?

如何设置 ASP.NET 服务器以防止某些文件可用?

我的 ASP.NET 网站上有几个文件仅供应用程序使用。目前,只需使用 URL 即可在浏览器中查看它们。有没有办法在不实际移动文件的情况下防止这种情况发生,或者我是否需要将文件移动到其他目录,例如_private

答案1

如果你能够在服务器上安装软件,那么你可以安装微软的URLScan限制 IIS 提供哪些文件。但这将针对整个服务器,而不仅仅是应用程序。

您还可以在站点上使用 web.config 文件执行此操作,详细信息如下这里,它们分别适用于IIS 5和.net 1.1,但原理是相同的。

答案2

使用 IIS 管理器通过导航到文件、右键单击它并从读取复选框中删除复选标记来单独阻止它们。

或者

使用 IIS 管理器为文件类型创建规则(请参阅此网页:support.microsoft.com/kb/815152)

答案3

仅供内部使用的配置和数据文件应放在 App_Data 文件夹中:

App_Data 文件夹

为了提高 ASP.NET 应用程序所用数据的安全性,已为 ASP.NET 应用程序添加了一个名为 App_Data 的新子文件夹。存储在 App_Data 文件夹中的文件不会响应直接 HTTP 请求而返回,这使得 App_Data 文件夹成为应用程序存储数据的推荐位置,包括 .mdf(SQL Server Express Edition)、.mdb(Microsoft Access)或 XML 文件。请注意,当使用 App_Data 文件夹存储应用程序数据时,应用程序的身份对 App_Data 文件夹具有读写权限。

ASP.NET 数据访问中的新增功能

相关内容