使用web.config限制浏览XML文件

时间:2013-10-25 12:54:49

标签: asp.net web-config

我有一个应用程序,我有一个XML文件,其中包含连接字符串。 当使用确切的文件名点击URL时,它会在浏览器中打开自然的文件。

现在我需要限制此文件浏览,我无法更改该代码以执行任何重定向或其他任何操作。

我所尝试的是在web.config中的安全标记中使用denyurlsequences但它也限制了应用程序访问该文件并使应用程序停止工作。

我正在使用.NET Framework 2.0

2 个答案:

答案 0 :(得分:1)

ASP.NET管道不支持“.xml”文件扩展名,这就是您无法将其添加到web.config并对其进行限制的原因。您可以做的是将xml文件复制到应用程序的“App_Data”文件夹中。

此文件夹的目的是从浏览器/用户隐藏文件,也是为此类数据构建的。

创建“App_Data”文件夹(如果它已经不存在):

Right click on your project -> Add ASP.NET Folder -> App_Data

或者只是添加一个文件夹并将其命名为App_Data

答案 1 :(得分:0)

我知道它的旧问题,但是此答案可能对其他人有帮助。 我在IIS 8.5上进行了以下配置(确保在IIS上安装了请求过滤。)

  1. 打开IIS,然后单击您的应用程序虚拟目录。
  2. 在功能视图中,单击“请求过滤”,然后转到“隐藏的细分”标签-该标签将包含隐藏文件或文件夹的列表。 (例如web.config,APP_data文件夹等...)
  3. 通过单击添加隐藏的段并添加要隐藏并测试的文件/文件夹名称,添加要从浏览中隐藏的文件或文件夹。

在我们的应用程序中,我们有一个主xml文件存储在应用程序文件夹中,要拒绝浏览该xml文件,我已将文件夹名称添加到隐藏的段中,并且可以正常工作。