Behebung von AWS SNS Bounce

Ich bleibe bei Schritt 12 hängen

Schritte

  1. Erstellen Sie eine Simple Email Service (SES)-Domain-Identität, your.domain, in einer der AWS-Regionen, die den E-Mail-Empfang unterstützen
  1. Domain-Identität verifizieren
  1. Erstellen Sie ein Simple Notification Service (SNS)-Topic, feedback-sns-topic, für Feedback-Benachrichtigungen
  2. Konfigurieren Sie die SES-Domain-Identität your.domain
    a. E-Mail-Feedback-Weiterleitung aktivieren
    b. Bounce- und Beschwerde- (nicht Zustellungs-) Feedback-Benachrichtigungen so konfigurieren, dass sie das SNS-Topic feedback-sns-topic verwenden
  3. Erstellen Sie ein Abonnement für das SNS-Topic feedback-sns-topic
    a. Protokoll ist HTTPS (Sie verwenden doch nicht etwa noch HTTP?)
    b. Endpunkt auf https://your.domain/webhooks/aws setzen (siehe VERP-Post )
    c. Rohnachrichtenübermittlung aktivieren auswählen
  4. Erstellen Sie ein weiteres SNS-Topic, incoming-sns-topic, für eingehende E-Mails
  5. Erstellen Sie einen SES-E-Mail-Empfangsregel-Satz, inbound-mail-set, falls noch keiner vorhanden ist. Verwenden Sie diesen dann, da nur ein aktiver Regel-Satz existieren kann
  6. Erstellen Sie eine Empfangsregel im Empfangsregel-Satz inbound-mail-set
    a. Empfängerbedingung auf your.domain setzen
    b. Aktion hinzufügen, um das SNS-Topic incoming-sns-topic zu veröffentlichen, Kodierung Base64
  7. Erstellen Sie einen API-Schlüssel in Ihrer Discourse-Instanz für den Benutzer system, der die Aktion receive email für die Ressource email gewährt
  8. Erstellen Sie ein Geheimnis im Secret Manager, email-handler-secret, mit den folgenden Schlüsseln und deren jeweiligen Werten:
  • api_endpoint - https://your.domain/admin/email/handle_mail
  • api_key - aus Schritt 9
  • api_username - system, es sei denn, Sie haben in Schritt 9 etwas anderes verwendet
  1. Erstellen Sie eine Lambda-Ebene, lambda-receiver-layer, für die Laufzeit python3.10, die die Bibliotheken requests und aws-lambda-powertools enthält
  2. Erstellen Sie eine Lambda-Funktion, email-receiver-lambda, für die Laufzeit python3.10 mit dem Empfangscode: