我使用SMTPClient
將電子郵件發送到SMTP服務器。但通過Send
方法,我可以指定任何錯誤的發件人姓名或電子郵件。我怎樣才能防止這一點?SMTP可以接受帶有虛假髮件人姓名的電子郵件
0
A
回答
5
郵件服務器的工作就是決定接受什麼作爲發件人的電子郵件地址 - 這只是一個政策問題。
郵件客戶端沒有「真正的」電子郵件地址,所以沒有什麼可以在客戶端強制執行。
2
我認爲這應該是SMTP服務器的角色來決定發件人名稱是否有效。事實上,將它引入您的代碼中會違反DRY規則,因爲您將複製SMTP配置。
正如您在http://msdn.microsoft.com/en-us/library/swas0fwc%28v=VS.90%29.aspx中看到的那樣,您應該只准備捕獲SmtpExceptions並將其正確顯示給您的軟件用戶。
0
你不能在SmtpClient中做任何事情。
你可以在你的應用程序中做些什麼。發送驗證郵件,用戶必須點擊驗證電子郵件。
你可以在你的smtp服務器上做些什麼。根據發件人域/ IP地址檢查MX記錄或定義的SPF策略。
0
SMTP是一個郵件傳送協議(顧名思義)。它不負責驗證發件人。爲了驗證發件人,您需要使用SMTP支持的證書,但同樣也只是作爲transfert的含義。程序本身需要具有用證書認證發件人的邏輯。
您也可以使用身份驗證,但在這種情況下,它將成爲將用戶名/密碼與電子郵件地址相匹配的SMTP服務器。
相關問題
- 1. 如何發送帶有Unicode發件人姓名的SMTP電子郵件
- 2. 帶有個人收件人姓名(原始電子郵件的發件人姓名)的Outlook回覆
- 3. 發送帶有SMTP的電子郵件
- 4. 設置電子郵件的「發件人」的「姓名」
- 5. 在bash中解析發件人姓名的電子郵件
- 6. Python:如何更改電子郵件發件人的姓名?
- 7. 如何更改發件人的電子郵件和姓名?
- 8. 使用帶發送者姓名的oracle發送電子郵件
- 9. 如何在電子郵件發件人上輸入姓名?
- 10. 有沒有發件人smtp發送電子郵件的可靠方法?
- 11. SMTP電子郵件發送
- 12. SMTP:發送電子郵件
- 13. 可以通過RS-232直接發送電子郵件(SMTP)
- 14. 獲取郵件發件人的姓名
- 15. 使用傳入的電子郵件發件人姓名或電子郵件地址保存附件
- 16. Smtp發送帶有樣式表的電子郵件
- 17. 發送帶有嵌入式Google字體的SMTP電子郵件
- 18. 從SMTP服務器發送帶有PHP的電子郵件
- 19. 帶有SMTP後端的django send_mail無法發送電子郵件
- 20. Opencart在聯繫人電子郵件中添加姓名和電子郵件以及郵件
- 21. paxos - 有人可以解釋接受郵件的例子
- 22. SMTP電子郵件
- 23. 通過SMTP發送電子郵件不會更改發件人的域名?
- 24. 發送smtp電子郵件使用C,不接受用戶名和密碼
- 25. 我可以在已在Exchange Server上發送的電子郵件中更改發件人的姓名嗎?
- 26. SMTP郵件發送給多個收件人,但不接受它
- 27. 在PHP電子郵件表格的標題中使用發件人姓名和電子郵件地址
- 28. 使用ruby net/smtp發送帶附件的電子郵件
- 29. 發送沒有別名發件人的重複電子郵件
- 30. 可能在單個SMTP多發性發件人的電子郵件
不涉及編程。閱讀SMTP服務器文檔。 – leppie 2010-11-10 08:58:43
@leppie,是你的權利。但我可以從哪裏開始? – 2010-11-10 09:25:16
technet會很好。 – leppie 2010-11-10 10:33:53