2011-05-09 90 views
2

我已經創建了幾個過去發送電子郵件的asp.net應用程序,但我一直不確定存儲SMTP憑據的位置。我通常只是創建一個單獨的XML文件來存儲這些信息,但我不確定這是否是最好的方法。在asp.net應用程序中存儲SMTP憑據的最佳做法是什麼?

爲asp.net應用程序存儲SMTP憑據時的最佳做法是什麼?

SMTP證書應該存儲在web.config中嗎?

回答

2

我說明了嗎?

<configuration> 
    <system.net> 
     <mailSettings> 
      <smtp> 
      </smtp> 
     </mailSettings> 
    </system.net> 
<configuration> 
0

主觀標籤?

我會存儲在web.config中,如果我有我的druthers。任何時候需要發送一封電子郵件(yuck),我一直在那些將它們存儲在數據庫中的地方,並調用數據庫獲取這些憑據。

2

你應該問問自己:你在哪裏儲存你的連接字符串

如果的web.config是足夠安全的爲您的數據庫憑據,我看不出有任何理由SMTP的人應該有所不同..

所以我的選擇是 - 無論您存儲連接字符串

+1

雖然您可以加密連接字符串。我猜你不能做同樣的smtp信譽 – 2011-05-09 21:50:14

+1

感謝您指出@Joe!您可以像加密連接字符串一樣加密任何類型的信息。正如我之前所說 - 兩個證書應該在相同的安全級別imho。 – ljubomir 2011-05-09 22:01:33

0

我會建議將SMTP服務器設置爲僅限NTLM身份驗證,然後作爲服務器的授權用戶運行該Web應用程序。除SMTP服務器的IP之外,不存儲憑證。

顯然,如果您使用的是Gmail,這不是一個選項,在這種情況下,將其存儲在您自己的單獨部分中,並使用加密的用戶名和密碼。然而,你可能會爭辯說,如果他們有權訪問你的網絡配置,他們很可能訪問你的源文件或去編譯的二進制文件。