iis / asp.net 使用 .config 和 .xml 文件的区别
2017-06-19 17:04
369 查看
由于在项目中有同学使用后缀为 .xml 的文件作为配置文件,而配置文件中有一些敏感信息被记录,如接口地址,Token,甚至还有数据库连接字符串。
以前都没想过为何微软会使用.config 的后缀在作为web.config,仅仅是为了直观吗? 众所周知,.config 实际也是.xml的一部分,是一个子集。理论上用 xxx.xml也是可以的。所以导致很多人习惯性的将很多配置文件以 .xml 的后缀使用。如果在网站中使用xml,如果不加以限制,是可以浏览.xml文件的内容的。如果你的.xml配置了敏感信息,等于埋了一颗雷。
举个日志配置的例子:
实际中随着项目的开发,可能很多功能都使用xml后缀为配置,没有做访问规则处理,如果被不怀好心的人扫描到网站目录,那将会很严重。
解决方式:
一、在iis中配置请求筛选,实际上为什么使用.config后缀,因为iis默认给添加了请求筛选,不需要自己去配置。这也是最主要的原因,次要原因.config也是直观上知道这个配置文件。
这是默认的.config配置
我们自定义添加一个隐藏段“configs”,把整个目录设置不能访问,然后试试效果
配置后会在web.config生成相应的配置
配置后的效果:
二、如果可以,在网站项目把.xml配置文件改为.config
但也仅限于是配置文件,如果只是普通的xml文件那也就没有必要使用.config的后缀。不同的业务使用不同的方式。
使用.config作为配置文件,也减少了网站维护人员的烦恼。如果万一哪天说我们网站被暴了,可能很久都查找不来问题。
可能有很多人都会忽略这个细节。特别是从桌面开发人员转过来开发网站项目的。。
本文内容未必完全正确,如有错误恳请指证,避免误人子弟,谢谢。
相关文章推荐
- 在Web.Config文件中使用configSource,避免动态修改web.config导致asp.net重启
- SEO_ASP.net SEO优化(包含URL地址重写\viewState移动和压缩至服务器\SEO信息XML生成_根据URL地址重写文件)\web网站内容压缩 源码公开.本人授权可使用于商业项目。
- Barcode Professional for ASP.NET使用教程:条码图像保存到数据库或者XML文件
- ASP.NET:使用web.config文件进行配置
- ASP.NET下使用xml反序列化、缓存实现个性化配置文件的实时生效
- asp.net web api - 使用多个Xml文件显示帮助文档
- ASP.NET Web.config配置文件的基本使用方法
- 使用Asp.net 生成 xml 文件,两种方式(DataSet和自定义模式)
- 在Web.Config文件中使用configSource,避免动态修改web.config导致asp.net重启(另添加一个Config文件用于管理用户数据)
- 使用.NET读取XML文件,.net开发,.net,ASP.NET
- 微软ASP.NET站点部署指南(3):使用Web.Config文件的Transformations
- 微软ASP.NET站点部署指南(3):使用Web.Config文件的Transformations
- ASP.NET Web.config配置文件的基本使用方法
- ASP.NET修改Web.Config文件(对xml的操作)
- ASP.NET中使用aspnet_regiss加密web.config文件标签
- 微软ASP.NET网站部署指南(3):使用Web.Config文件的Transformations
- ASP.NET下使用xml反序列化、缓存依赖实现个性化配置文件的实时生效
- 在Web.Config文件中使用configSource,避免动态修改web.config导致asp.net重启(另添加一个Config文件用于管理用户数据)
- [转]ASP.NET Web.config配置文件的基本使用方法