【问题标题】:xdmp:email and AWS SESxdmp:email 和 AWS SES
【发布时间】:2020-02-15 01:06:33
【问题描述】:

我正在尝试使用 AWS SES 通过“xdmp:email”命令从 MarkLogic 发送电子邮件,但我不断收到“地址未验证”错误。我已经尝试在每个可能的电子邮件字段(回复、发件人、发件人等)中提供经过验证的电子邮件地址,但我还没有找到仅使用 xdmp:email 解决此特定错误的方法。值得注意的是,如果我在“发件人”字段中输入未经验证的电子邮件地址,例如,两个未经验证的电子邮件地址都会出现在错误消息中。这告诉我 1) 我已经在 xdmp:email 中正确输入了回复、发件人等地址,并且 2) AWS 正在记录这些地址,如果经过验证,就会让它通过。问题是我真的无法控制这个电子邮件地址。错误是:

Error sending mail: : 554 Message rejected: Email address is not verified. 
The following identities failed the check in region US-EAST-1: daemon@ip-10-62-92-128.ec2.internal

我在选项中输入凭据。总而言之,我相当有信心其他一切都正确完成。例如,在我输入凭据之前,我收到了授权错误。在我验证了实际的 TO 地址之前,我收到了这些地址未正确验证的错误。我已经能够解决这些错误。此电子邮件代码的大部分都在 AWS 之外全面运行,所以我不太担心代码存在一些基本问题。

FWIW,我们请求了一个“付费”SES 帐户,因此我们不再在“沙盒”中工作。我们已删除并重新创建了 SMTP IAM 用户。谷歌搜索建议升级应该已经充分解决了这个问题,用户问题是第二个想法,所以坦率地说,我不清楚这是否也是 AWS 问题。不管这些 AWS 特定问题如何,在我看来,我应该能够通过 SES 沙箱相对轻松地从 MarkLogic 发送电子邮件,而不必立即升级到付费帐户。

我有什么遗漏吗?我非常想错过一些简单的东西。有没有办法不让 ML 将此虚拟电子邮件地址附加到消息中?有没有办法验证这个虚拟电子邮件地址,以便在服务扩展时它是可扩展的?验证域的通用解决方案对我来说不是一件简单的事情吗?我是否应该考虑使用 postfix 或其他东西设置 localhost SMTP 中继(当然,谁知道这是否真的可以解决这个问题)?其他人如何在 AWS 中同时使用 MarkLogic 和 SES?

【问题讨论】:

    标签: marklogic amazon-ses marklogic-9


    【解决方案1】:

    当未验证 FROM 或 SENDER 电子邮件标头时会发生此错误。 身份验证是第一步,但不会绕过发件人/发件人检查。 首先在其他工具中验证是否为同一电子邮件地址正确配置了 SES。您可能需要尝试使用 smtp 中继或一些类似的低级工具来调试它。 xdmp:email 的设置包括“发件人”但不包括“发件人”(通常称为“信封发件人”)——这两个都需要验证 SES 电子邮件地址。

    一种解决方法是使用类似 postfix 的东西来配置本地 smtp 代理,可以将其配置为正确使用 SES,并具有良好的 smtp 假脱机处理的好处,用于处理超出 xdmp:email 能力的重试/错误和间歇性负载问题.

    【讨论】:

    • 为了清楚起见,FROM 和 SENDER 电子邮件地址已经过验证。我可以很容易地让另一个应用程序(不是 MarkLogic)使用 SES 在 AWS 中正​​确处理这些地址。也可以通过 rfc822 命名空间将这些标头包含在 xdmp:email 消息本身中。问题似乎是 MarkLogic 将看似无法验证的电子邮件地址 - daemon@ip-10-62-92-128.ec2.internal - 附加到每条消息。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-05-26
    • 2018-08-12
    • 2014-06-16
    • 2019-06-04
    • 1970-01-01
    相关资源
    最近更新 更多