我正在写一个发送给朋友的功能,我需要发件人地址作为发件人的电子邮件更加个性化。但是,使用Amazon SES,我看起来只能从经过验证的地址发送。
我不认为这是一个不常见的问题,并且想知道其他人是如何解决这个问题的?
答案 0 :(得分:6)
但是,对于Amazon SES,我看起来只能通过验证发送 地址。
这是正确的,然而,Simple Mail Transport Protocol (SMTP)的mail transport agent's (MTA)发件人的历史缺陷之一(以及人们如此轻易地成为基于电子邮件的捕鱼攻击的受害者的主要原因之一)是About Header Fields从观点来看,根本不需要从邮件客户端的角度来匹配发件人,请参阅Originator fields:
简单邮件传输协议(SMTP)指定电子邮件的方式 通过定义邮件信封及其一些参数来发送, 但它并不关心消息的内容。 相反,Internet消息格式(RFC 2822)定义了如何 消息将被构建。
RFC 2822定义Appendix: Header Fields到表示邮件来源的邮箱:
“发件人:”字段指定邮件的作者,即 负责该邮件的人或系统的邮箱 写信息。 “发件人:”字段指定邮箱 负责实际传输的代理人 信息。例如,如果秘书要发送消息 另一个人,秘书的邮箱会出现在 “发件人:”字段和实际作者的邮箱将出现在 “来自:”字段。
如上所述,您只需在Sender
标题字段中提供经过验证的发件人,并可以提供您喜欢的任何From
地址(有关受支持字段的列表,请参阅Whitepaper on Email Best Practices )。
由于上述原因,像这样制作邮件(尽管完全有效)使得更有可能被涉及的邮件传输系统归类为垃圾邮件 - 这是AWS在Authenticating Your Email中描述此问题的方式:
仔细考虑您发送电子邮件的地址。该 “发件人”地址不仅会在其电子邮件中显示给收件人 客户端(包括在预览窗格中),但也会收集 一些ISP的声誉。这与主题一致,将 创建收件人对您的电子邮件的第一印象。
因此,您应该应用{{3}}的可用度量来依次提高您的声誉(当然,强烈建议这样做)。