AWS SES аудит - PullRequest
       4

AWS SES аудит

2 голосов
/ 11 февраля 2020

Мне нужно сохранить статус в базе данных, если электронное письмо было доставлено успешно или нет, если пользователь действительно получил электронное письмо или нет, когда оно было доставлено, содержание электронной почты и т. Д. c. с целью аудита. Как это сделать? Есть ли API для этого в AWS sdk?

Ответы [ 2 ]

1 голос
/ 11 февраля 2020

Это не так просто, как просто включить его, но AWS предоставляет все необходимые вам части. Вот как я это делаю в настоящее время

  1. Включите AWS уведомления о доставке, которые будут отправлять уведомления в SNS topi c
  2. Иметь эту SNS topi c доставку эти сообщения в очередь SQS
  3. Имейте фоновое задание, обрабатывающее эти сообщения и перемещающее их в базу данных DynamoDB для постоянного хранения.

Ключевая часть # 1, как вы обрабатываете # 2 и № 3 зависит от вас - если бы мне пришлось сделать это снова, я бы использовал Lambda для захвата № 3 вместо меня, вместо того чтобы использовать пользовательское задание, выполняемое на выделенном экземпляре Ec2.

Вы можете узнать подробнее об уведомлениях о доставке здесь:

https://docs.aws.amazon.com/ses/latest/DeveloperGuide/configure-sns-notifications.html#configure -feedback-notifications-console

также имейте в виду, что отслеживание не идеально - нет трекера электронной почты - SES использует некоторые из тех же методов, которые использует mailchimp / constant contact, чтобы определить, было ли открыто электронное письмо, но оно далеко не надежно.

0 голосов
/ 13 февраля 2020

Вы можете настроить Amazon SES таким образом, чтобы уведомлять Amazon SNS topi c при получении отказов или жалоб или при доставке электронной почты. Уведомления Amazon SNS имеют формат JavaScript нотации объектов (JSON), который позволяет обрабатывать их программно.

Выполните следующие действия:

  1. Создать топи c в SNS

  2. Подписаться на topi c для уведомлений о доставке (уведомления отправляются в AWS SNS topi c в формате JSON).

  3. Подписаться на SNS можно одним из следующих способов:

    • Лямбда
    • SQS
    • HTTP / S
    • Электронная почта
    • SMS

Учитывая необходимость сохранения параметров JSON в таблице базы данных для целей аудита, вы можете прослушивать HTTP / S или SQS.

JSON ответ будет содержать полезную информацию, такую ​​как идентификатор сообщения, тип уведомления, например, жалобы, отказ, доставка и т. Д. c.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...