我有一些我希望Web服务器能够使用的敏感文件,但我不希望它们可以从Web浏览器访问。
我很难找到任何描述ASP.Net中哪些文件夹是托管宣传以及哪些是私有的文档。例如,我知道Content和Scripts目录是公共的,但我看不到任何显示授予访问这些路径的配置或选项。
Web可访问哪些文件夹?放置这些敏感文件在哪里安全?
感谢您的帮助!
答案 0 :(得分:2)
有一些我希望Web服务器能够访问的敏感文件 使用,但我不希望它们可以从网络浏览器访问。
~/App_Data
适合你。以下是不同ASP.NET special folders的列表。
答案 1 :(得分:2)
我不确定哪些特殊文件夹被锁定(除了App_Data&amp; bin),但您可以通过向<authorization/>
添加<location/>
部分来阻止任何文件夹被Web访问你的web.config部分:
<!-- Block access to Admin directory -->
<location path="Admin">
<system.web>
<authorization>
<deny users="*" />
</authorization>
</system.web>
</location>
或者,您可以将web.config直接添加到要阻止的目录,其中包含以下内容:
<?xml version="1.0"?>
<!-- This web.config blocks access to any directory it is put in,
and its subdirectories -->
<configuration>
<system.web>
<authorization>
<deny users="*" />
</authorization>
</system.web>
</configuration>
这些方法功能相同,只取决于您的偏好。就个人而言,我认为在你阻止访问的目录中使用web.config文件有点不那么容易混淆。