iis / asp.net 使用 .config 和 .xml 文件的區別

 

因爲在項目中有同窗使用後綴爲 .xml 的文件做爲配置文件,而配置文件中有一些敏感信息被記錄,如接口地址,Token,甚至還有數據庫鏈接字符串。web

之前都沒想過爲什麼微軟會使用.config 的後綴在做爲web.config,僅僅是爲了直觀嗎? 衆所周知,.config 實際也是.xml的一部分,是一個子集。理論上用 xxx.xml也是能夠的。因此致使不少人習慣性的將不少配置文件以 .xml 的後綴使用。若是在網站中使用xml,若是不加以限制,是能夠瀏覽.xml文件的內容的。若是你的.xml配置了敏感信息,等於埋了一顆雷。數據庫

舉個日誌配置的例子:網站

實際中隨着項目的開發,可能不少功能都使用xml後綴爲配置,沒有作訪問規則處理,若是被不懷好心的人掃描到網站目錄,那將會很嚴重。日誌

 

解決方式:xml

1、在iis中配置請求篩選,實際上爲何使用.config後綴,由於iis默認給添加了請求篩選,不須要本身去配置。這也是最主要的緣由,次要緣由.config也是直觀上知道這個配置文件。blog

這是默認的.config配置接口

咱們自定義添加一個隱藏段「configs」,把整個目錄設置不能訪問,而後試試效果開發

配置後會在web.config生成相應的配置字符串

 

配置後的效果:配置

 

 

2、若是能夠,在網站項目把.xml配置文件改成.config

但也僅限因而配置文件,若是隻是普通的xml文件那也就沒有必要使用.config的後綴。不一樣的業務使用不一樣的方式。

使用.config做爲配置文件,也減小了網站維護人員的煩惱。若是萬一哪天說咱們網站被暴了,可能好久都查找不來問題。

 

可能有不少人都會忽略這個細節。特別是從桌面開發人員轉過來開發網站項目的。。

 

本文內容未必徹底正確,若有錯誤懇請指證,避免誤人子弟,謝謝。

相關文章
相關標籤/搜索