1

我一直在尝试在 SQL 数据库邮件上设置 sendgrid,但一直显示无法将邮件发送到邮件服务器。

这就是我所做的。

  1. 我有 abc@mydomain.com 的 sendgrid 帐户,并创建了 api 密钥和 SG.xxxx 密码。
  2. 由于这是产品设置实例,我已经完成了域级别的身份验证,并且我的网站管理员按照 sendgrid 的要求更新了 CNAME。
  3. 使用 TELNET smtp.sendgrid.net 587 进行测试并使用 SG.xxxx 密码 Base64 编码进行身份验证,这能够将电子邮件从 abc@mydomain.com 发送到 xyz@mydomain.com
  4. 我使用 abc@mydomoain.com 设置配置文件作为 SQL 通知配置文件并选择基本身份验证,并在数据库邮件中提供“apikey”作为用户名,并提供“SG.xxx”作为密码 - SQL SSMS 中的“配置数据库邮件”选项。未选中 -“服务器需要安全身份验证 (SSL) 连接”端口 587
  5. 我尝试使用“abc@domain.com”向“xyz@mydomain.com”“发送测试邮件”,但数据库邮件反映如下截图错误

我尝试在数据库邮件配置向导中使用 abc@mydomain.com 和 sendgrid 帐户密码进行基本身份验证,但 sendgrid 建议他们不接受基本身份验证。如果不在基本身份验证下,请帮助我应该如何以及在哪里传递 api 密钥?我尝试使用 msdb.dbo.sysmail_add_account_sp 和更新记录进行更新,但它也没有解决并从数据库邮件发送电子邮件。

任何帮助/指导将不胜感激,或者如果您遇到此问题,您是如何解决的。

数据库邮件日志

4

1 回答 1

0

你好解决方法如下

创建 dbmail 配置文件

  • 服务器名称:smtp.sendgrid.net
  • 端口:25

SMTP 认证

  • 基本认证
  • 用户名:apikey
  • 密码:: {您的 sendgrid 帐户的 api-key}

而已。发送测试电子邮件。

如果它仍然不起作用,如果您在 AWS EC2 上,请确保安全组允许出站端口:25

这是 sendgrid 关于 apikey 身份验证的链接。 https://docs.sendgrid.com/for-developers/sending-email/upgrade-your-authentication-method-to-api-keys

于 2022-03-04T00:45:06.910 回答