Sendgrid 解析 webhook - 电子邮件转发

问题描述 投票:0回答:1

我有一个 PHP Web 应用程序,它与 SendGrid 集成,用于传入(解析 Webhook)和传出邮件(PHP

mail()
,具有邮件代理的系统配置)。目前,我们的传入邮件系统包含一个端点,它将所有联系电子邮件保存到我们的数据库中。我们还希望有一些到其他邮件提供商的直接电子邮件转发映射(例如 [email protected] => [email protected])。

据我所知,SendGrid 端没有电子邮件路由或使用 SMTP 协议转发它们,只有简单的 API 调用连接到我们的端点。创建指向我们的 IP 地址的 MX 记录不是一种选择,因为我们不想向公众泄露我们服务器的原始 IP 地址(DDoS 风险)。

我是否应该编写代码来获取电子邮件的内容并

mail()
转发它?有些数据会丢失,但大多数情况下它应该可以工作。或者有没有办法连接 Gmail Business 帐户之类的东西来侦听这些特定地址的邮件?

php sendgrid email
1个回答
0
投票

没有直接的解决方法。

  1. 使用 SendGrid Parse Webhook 接收传入电子邮件。
  2. 将联系电子邮件存储到您的数据库(就像您正在做的那样)
  3. 在您的应用程序中编写自定义转发逻辑。当电子邮件到达时,如果它符合转发规则之一 [电子邮件受保护][电子邮件受保护]) 使用 PHP mail() 函数或 SMTP 库将电子邮件转发到您所需的地址(例如,[电子邮件受保护]

请注意一些信息,例如原始发件人的 IP 地址、 在此过程中可能不会被保留。也可以使用HTTPS进行加密 您的应用程序和 SendGrid 的 API 之间的通信以保护 敏感数据。

  1. 您必须在 Gmail 中为特定地址(例如 [受保护的电子邮件])设置转发规则,才能将电子邮件转发到 [受保护的电子邮件]。这只能在 Gmail Business 设置中实现。

注意此转发由 Gmail 管理,而不是在您的 PHP 应用程序中管理。 如果您愿意为此目的使用 Gmail,这是一个选项。

  1. 为了避免显示您服务器的原始 IP 地址,您可以使用 Cloudflare 或类似 CDN/WAF 等服务。这些服务充当您的服务器和公众之间的代理,掩盖您服务器的真实 IP 地址。

记住根据您的特定应用程序和威胁模型实施额外的安全措施。

© www.soinside.com 2019 - 2024. All rights reserved.