我們如何使用java郵件API,以便僅在需要時才進行SMTP認證。 例如,如果mail.smtp.auth屬性設置爲true,即使SMTP服務器不需要驗證,驗證也會完成。僅當需要時才使用Java SMTP認證
我是否需要首先發送沒有密碼的郵件,捕獲異常並根據異常發送帶有密碼的郵件?
我們如何使用java郵件API,以便僅在需要時才進行SMTP認證。 例如,如果mail.smtp.auth屬性設置爲true,即使SMTP服務器不需要驗證,驗證也會完成。僅當需要時才使用Java SMTP認證
我是否需要首先發送沒有密碼的郵件,捕獲異常並根據異常發送帶有密碼的郵件?
在此基礎上:
我沒有控制暗示,這是誰高達使用該軟件的用戶。
簡單的解決方案是允許用戶打開/關閉使用配置的認證細節。其中有很多,包括一些啓用/禁用身份驗證。
除此之外,你是運氣不好。您需要通過創建子類或從頭開始實現自己的SMTP提供程序行爲。或者,捕獲異常並重試。
您的特定操作模式根本不受支持。
對於什麼是值得的,我認爲,JavaMail的執行者在不支持這種使用情況,無論他們是否是故意做了正確的事情。這將鼓勵郵件服務器的實施者對安全問題漠不關心,最終用戶使用電子郵件欺騙來玩愚蠢的遊戲。
感謝您的解釋。它有幫助。 – Ramana
你爲什麼要這樣做?當然,如果你有辦法進行身份驗證,你應該這樣做。同上使用安全通道與服務器通話。另外,我從來沒有聽說過有人用* optional *認證配置SMTP服務器。爲什麼要這麼做? –
內部域名電子郵件未在我正在使用的系統中進行身份驗證。因此要求。可能會很奇怪但是無論如何這樣做。 – Ramana
這個「不是」是指「不能被認證」或「不需要認證」嗎?在後一種情況下,最好的做法是無論如何認證它們。 –