首先声明,我的SaaS平台可以通过选项2b实现这一点。它是一个电子商务市场,我需要收据从产品销售者的电子邮件地址发送,而不是从我(市场)的地址发送。
你有两个选择:
通过客户的邮件服务器发送电子邮件(而不是Mailjet)
在Mailjet(或类似的电子邮件)服务上验证客户的域名
选择1
选择1,您需要请求客户IT团队为您设置用户名和密码,以便您访问他们的SMTP服务器。这基本上就像他们为您创建一个要使用的电子邮件帐户。这可能看起来是可用于您的最简单的路径,但存在潜在的问题和缺点:
这样做,您将失去mailjet提供的邮件打开/点击/退回跟踪功能,因为您将使用公司的SMTP服务器。
如果您正在发送到一个相当常见的电子邮件地址(例如info@your-client.com),客户可能已经在其邮件服务器上激活了该帐户。这将允许他们在现有基础设施中接收回复,但会使他们对与您共享其邮件服务器密码的安全问题感到警惕。
您可能会发现他们甚至没有能力向您提供用户名和密码。现代邮件服务不允许SMTP访问(这是您的Web应用程序将需要的);而安全意识高的公司要求电子邮件帐户进行双因素身份验证(您的Web应用程序无法回答)。
选择2
对于此选项,您需要请求他们的IT团队配置一些DNS记录,以向Mailjet和电子邮件接收者证明您有权代表客户发送邮件。
当您第一次设置Mailjet时,也为自己的域名做了这件事。有关所涉及的内容,请参见https://app.mailjet.com/support/how-to-add-a-sender-address,96.htm,但这是要求客户配置DNS记录的情况。
这告诉Mailjet您有权代表该域名发送邮件。但是,您还希望客户调整其SPF和DKIM记录,以便接收电子邮件的人知道应信任Mailjet服务器发送的来自客户域名的电子邮件。通常,接收方仅信任从客户邮件服务器发送的电子邮件(这是您作为选项1拥有的),并且不信任从SAAS提供商发送的电子邮件。
您在Mailjet上已经为自己的域名执行了此操作,详见https://app.mailjet.com/docs/spf-dkim-guide。
因此,对于此选项,您需要请求客户设置3个DNS记录。
如果您选择这条路线,可以设置一个独立的Mailjet账户,他们与您都可以访问。这样,他们就可以直接看到他们的仪表盘,并感到对其拥有所有权和安全性。但是,您将无法涨价。
结论
跟踪功能对您来说有多重要?如果您不能失去跟踪,那么您需要选择方案2。
客户的技术水平如何?他们是否能够更改DNS记录?他们是否会(正确地)关注在其主要邮件服务器上为您创建帐户的安全性。
我偏好方案2。您可能需要协助他们完成DNS设置,以便在Mailjet上进行配置(并在此处询问SPF以确保您正确),因此您可以向他们提供创建/更新特定3个DNS记录的清晰指示。
无论采取哪种方法,请确保尽快与客户方的正确人员沟通。他们的营销团队可能渴望与您合作,但是如果他们的IT感到被排除在谈话之外,当您需要他们进行更改时,他们将很难参与其中。我们IT人士可能会很暴躁和顽固。
您的Web应用程序
这将需要进行一些调整。您可能已经在文件或环境变量中存储了Mailjet凭据;这些凭据可能需要移动到数据库表中,以便您可以将凭据与特定帐户相关联。但是,我们需要更多有关Web应用程序的信息,才能更好地解决这一挑战。
方案2b
仅作为笔记而非真正的建议。请注意,某些电子邮件服务提供商允许通过向该域上的某个人发送电子邮件(例如admin@yourclient.com)来完成发送验证部分,然后在收件人单击该电子邮件上的批准链接时允许通过API发送。但即使使用此设置,仍需要客户在其DNS上配置SPF和DKIM,因此额外的一个记录并不是很困难。AWS的SES可以实现此功能。这对我很有效;但我的交付能力要求不同,并且有大量的非技术用户(而不是您的一两个重要客户)。