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


 

由於在項目中有同學使用后綴為 .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作為配置文件,也減少了網站維護人員的煩惱。如果萬一哪天說我們網站被暴了,可能很久都查找不來問題。

 

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

 

本文內容未必完全正確,如有錯誤懇請指證,避免誤人子弟,謝謝。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM