2010-10-18 31 views
0

與其說ConfigurationManager.ConnectionStrings("db1").ToString()ConfigurationManager.ConnectionStrings("db2").ToString()遍佈在我的DAL的地方,那會是罰款創建一個靜態全局類(ConnStrings)與靜態的只讀屬性(db1db2)並更換請致電ConnStrings.db1ConnStrings.db2保持的ConnectionStrings在全局類

由於我的連接字符串是加密的,當我設置db1/db2或只有當它被訪問時它們纔會被解密嗎?

回答

1

這是一個好主意。實質上你對ConfigurationManager的調用是重複的代碼,你希望擺脫掉。

連接字符串在從配置文件中檢索時會被解密。所以ConnStrings.db1將是一個未加密的字符串。

+0

在靜態屬性中有未加密的連接細節很好嗎?你不想在最後一刻解密嗎? – eych 2010-10-19 03:10:57

+0

那麼您仍然可以選擇將ConnStrings.db1調用到ConfigurationManager.ConnectionStrings中,而不是存儲在靜態字段中。然後,您仍然將連接字符串加密到最後一分鐘,從安全角度來看這是很好的。但說實話,對於大多數應用程序來說並不重要。如果攻擊者有能力查看應用程序內存,他也可以調用ConfigurationManager。 – driis 2010-10-19 06:51:29