我已經創建了幾個過去發送電子郵件的asp.net應用程序,但我一直不確定存儲SMTP憑據的位置。我通常只是創建一個單獨的XML文件來存儲這些信息,但我不確定這是否是最好的方法。在asp.net應用程序中存儲SMTP憑據的最佳做法是什麼?
爲asp.net應用程序存儲SMTP憑據時的最佳做法是什麼?
SMTP證書應該存儲在web.config中嗎?
我已經創建了幾個過去發送電子郵件的asp.net應用程序,但我一直不確定存儲SMTP憑據的位置。我通常只是創建一個單獨的XML文件來存儲這些信息,但我不確定這是否是最好的方法。在asp.net應用程序中存儲SMTP憑據的最佳做法是什麼?
爲asp.net應用程序存儲SMTP憑據時的最佳做法是什麼?
SMTP證書應該存儲在web.config中嗎?
我說明了嗎?
<configuration>
<system.net>
<mailSettings>
<smtp>
</smtp>
</mailSettings>
</system.net>
<configuration>
主觀標籤?
我會存儲在web.config中,如果我有我的druthers。任何時候需要發送一封電子郵件(yuck),我一直在那些將它們存儲在數據庫中的地方,並調用數據庫獲取這些憑據。
你應該問問自己:你在哪裏儲存你的連接字符串?
如果的web.config是足夠安全的爲您的數據庫憑據,我看不出有任何理由SMTP的人應該有所不同..
所以我的選擇是 - 無論您存儲連接字符串。
我會建議將SMTP服務器設置爲僅限NTLM身份驗證,然後作爲服務器的授權用戶運行該Web應用程序。除SMTP服務器的IP之外,不存儲憑證。
顯然,如果您使用的是Gmail,這不是一個選項,在這種情況下,將其存儲在您自己的單獨部分中,並使用加密的用戶名和密碼。然而,你可能會爭辯說,如果他們有權訪問你的網絡配置,他們很可能訪問你的源文件或去編譯的二進制文件。
雖然您可以加密連接字符串。我猜你不能做同樣的smtp信譽 – 2011-05-09 21:50:14
感謝您指出@Joe!您可以像加密連接字符串一樣加密任何類型的信息。正如我之前所說 - 兩個證書應該在相同的安全級別imho。 – ljubomir 2011-05-09 22:01:33