Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Registrieren Sie mehrere AWS Konten mit einer einzigen E-Mail-Adresse mithilfe von Amazon SES
Erstellt von Joe Wozniak () und Shubhangi Vishwakarma () AWS AWS
Code-Repository: GitHub aws-account-factory-email | Umgebung: PoC oder Pilotprojekt | Technologien: Infrastruktur; Verwaltung und Verwaltung; Nachrichtenübermittlung und Kommunikation |
AWSDienste: AWS Lambda; AmazonSES; Amazon DynamoDB |
Übersicht
Dieses Muster beschreibt, wie Sie echte E-Mail-Adressen von der E-Mail-Adresse entkoppeln können, die mit einer verknüpft ist. AWS-Konto AWS-Konten erfordern, dass bei der Kontoerstellung eine eindeutige E-Mail-Adresse angegeben wird. In einigen Organisationen AWS-Konten muss das verwaltende Team die Last der Verwaltung vieler eindeutiger E-Mail-Adressen mit seinem Messaging-Team übernehmen. Dies kann für große Organisationen, die viele verwalten, schwierig sein AWS-Konten. Wenn Ihr E-Mail-System die Plus- oder Unteradressierung nicht zulässt, wie sie in Sieve Email Filtering: Subaddress Extension (RFC5233)admin+123456789123@example.com
dieses Muster helfen, diese Einschränkung zu umgehen.
Dieses Muster bietet eine einzigartige Lösung für den Verkauf von E-Mail-Adressen, mit der AWS-Konto Eigentümer eine E-Mail-Adresse mehreren zuordnen können. AWS-Konten Die echten E-Mail-Adressen der AWS-Konto Eigentümer werden dann diesen generierten E-Mail-Adressen in einer Tabelle zugeordnet. Die Lösung verarbeitet alle eingehenden E-Mails für die einzelnen E-Mail-Konten, sucht nach dem Besitzer jedes Kontos und leitet dann alle empfangenen Nachrichten an den Eigentümer weiter.
Voraussetzungen und Einschränkungen
Voraussetzungen
Administrativer Zugriff auf ein AWS-Konto.
Zugriff auf eine Entwicklungsumgebung.
(Optional) Wenn Sie mit AWS Cloud Development Kit (AWS CDK) Workflows und der Programmiersprache Python vertraut sind, können Sie Probleme beheben oder Änderungen vornehmen.
Einschränkungen
Die Gesamtlänge der versendeten E-Mail-Adresse beträgt 64 Zeichen. Einzelheiten finden Sie CreateAccountin der AWS Organizations APIReferenz.
Versionen der Produkte
Node.js Version 12.7.0 oder höher
Python 3.9 oder höher
Python-Pakete pip und virtualenv
AWS CDK Version 2.23.0 oder höher
Docker 20.10.x oder höher
Architektur
Zieltechnologie-Stack
AWS CloudFormation stapeln
AWS Lambda Funktionen
Regel und Regelsatz für Amazon Simple Email Service (AmazonSES)
AWS Identity and Access Management (IAM) Rollen und Richtlinien
Bucket- und Bucket-Richtlinie für Amazon Simple Storage Service (Amazon S3)
AWS Key Management Service (AWS KMS) Schlüssel und wichtige Richtlinie
Thema und Themenrichtlinie für Amazon Simple Notification Service (AmazonSNS)
Amazon-DynamoDB-Tabelle.
Zielarchitektur
Dieses Diagramm zeigt zwei Abläufe:
Ablauf des Verkaufs von E-Mail-Adressen: Im Diagramm beginnt der Ablauf des Verkaufs von E-Mail-Adressen (unterer Abschnitt) in der Regel mit einer Kontoverkaufslösung oder einer externen Automatisierung oder wird manuell aufgerufen. In der Anfrage wird eine Lambda-Funktion mit einer Nutzlast aufgerufen, die die benötigten Metadaten enthält. Die Funktion verwendet diese Informationen, um einen eindeutigen Kontonamen und eine E-Mail-Adresse zu generieren, sie in einer DynamoDB-Datenbank zu speichern und die Werte an den Aufrufer zurückzugeben. Diese Werte können dann verwendet werden, um eine neue zu erstellen AWS-Konto (normalerweise mithilfe von). AWS Organizations
Ablauf der E-Mail-Weiterleitung: Dieser Ablauf ist im oberen Abschnitt des vorherigen Diagramms dargestellt. Wenn ein mithilfe der Konto-E-Mail erstellt AWS-Konto wird, die aus dem E-Mail-Verkaufsablauf generiert wurde, AWS werden verschiedene E-Mails, wie z. B. die Bestätigung der Kontoregistrierung und regelmäßige Benachrichtigungen, an diese E-Mail-Adresse gesendet. Indem Sie die Schritte in diesem Muster befolgen, konfigurieren Sie Ihr Konto AWS-Konto bei Amazon soSES, dass Sie E-Mails für die gesamte Domain erhalten. Diese Lösung konfiguriert Weiterleitungsregeln, die es Lambda ermöglichen, alle eingehenden E-Mails zu verarbeiten, zu überprüfen, ob sich die
TO
Adresse in der DynamoDB-Tabelle befindet, und die Nachricht stattdessen an die E-Mail-Adresse des Kontoinhabers weiterzuleiten. Mithilfe dieses Verfahrens haben Kontoinhaber die Möglichkeit, mehrere Konten mit einer E-Mail-Adresse zu verknüpfen.
Automatisierung und Skalierung
Dieses Muster verwendet die AWS CDK , um die Bereitstellung vollständig zu automatisieren. Die Lösung verwendet AWS verwaltete Dienste, die automatisch skaliert werden (oder so konfiguriert werden können), dass sie Ihren Anforderungen entsprechen. Die Lambda-Funktionen erfordern möglicherweise eine zusätzliche Konfiguration, um Ihre Skalierungsanforderungen zu erfüllen. Weitere Informationen finden Sie in der Lambda-Dokumentation unter Grundlegendes zur Lambda-Funktionsskalierung.
Tools
AWSDienste
AWS CloudFormationhilft Ihnen dabei, AWS Ressourcen einzurichten, sie schnell und konsistent bereitzustellen und sie während ihres gesamten Lebenszyklus regionsübergreifend AWS-Konten zu verwalten.
AWS Command Line Interface (AWS CLI) ist ein Open-Source-Tool, mit dem Sie mithilfe von Befehlen in Ihrer Befehlszeilen-Shell mit AWS Diensten interagieren können.
Amazon DynamoDB ist ein vollständig verwalteter Service ohne SQL Datenbank, der eine schnelle, vorhersehbare und skalierbare Leistung bietet.
AWS Identity and Access Management (IAM) hilft Ihnen dabei, den Zugriff auf Ihre AWS Ressourcen sicher zu verwalten, indem kontrolliert wird, wer authentifiziert und autorisiert ist, diese zu verwenden.
AWS Key Management Service (AWS KMS) hilft Ihnen dabei, kryptografische Schlüssel zu erstellen und zu kontrollieren, um Ihre Daten zu schützen.
AWS Lambdaist ein Rechendienst, mit dem Sie Code ausführen können, ohne Server bereitstellen oder verwalten zu müssen. Er führt Ihren Code nur bei Bedarf aus und skaliert automatisch, sodass Sie nur für die tatsächlich genutzte Rechenzeit zahlen.
Amazon Simple Email Service (AmazonSES) unterstützt Sie beim Senden und Empfangen von E-Mails mithilfe Ihrer eigenen E-Mail-Adressen und Domains.
Amazon Simple Notification Service (AmazonSNS) unterstützt Sie bei der Koordination und Verwaltung des Nachrichtenaustauschs zwischen Herausgebern und Kunden, einschließlich Webservern und E-Mail-Adressen.
Amazon Simple Storage Service (Amazon S3) ist ein cloudbasierter Objektspeicherservice, der Sie beim Speichern, Schützen und Abrufen beliebiger Datenmengen unterstützt.
Für die Bereitstellung benötigte Tools
Entwicklungsumgebung mit AWS CLI und IAM Zugriff auf Ihre AWS-Konto. Einzelheiten finden Sie unter den Links im Abschnitt Verwandte Ressourcen.
Installieren Sie auf Ihrem Entwicklungssystem Folgendes:
Git-Befehlszeilentool, verfügbar auf der Git-Download-Website
. Das AWS CLI , um die Zugangsdaten für die zu konfigurieren AWS CDK. Weitere Informationen finden Sie in der AWS CLI -Dokumentation.
Python-Version 3.9 oder höher, erhältlich auf der Python-Download-Website
. Python-Pakete pip und virtualenv. Installationsanweisungen finden Sie in der Pip-Dokumentation
und in der Virtualenv-Dokumentation. Node.js Version 12.7.0 oder höher. Installationsanweisungen finden Sie in der Dokumentation zu Node.js.
AWS CDK Version 2.23.0 oder höher. Installationsanweisungen finden Sie in der AWS CDK Dokumentation.
Docker-Version 20.10.x oder höher. Installationsanweisungen finden Sie in der Docker-Dokumentation.
Code
Der Code für dieses Muster ist im GitHub AWS-Konto werkseitigen E-Mail-Repository
Epen
Aufgabe | Beschreibung | Erforderliche Fähigkeiten |
---|---|---|
Identifizieren oder erstellen Sie eine AWS-Konto. | Identifizieren Sie ein vorhandenes oder neues, AWS-Konto auf das Sie vollen Administratorzugriff haben, um die E-Mail-Lösung bereitzustellen. | AWSAdministrator, Cloud-Administrator |
Richten Sie eine Bereitstellungsumgebung ein. | Konfigurieren Sie eine benutzerfreundliche Bereitstellungsumgebung und richten Sie Abhängigkeiten ein, indem Sie die folgenden Schritte ausführen:
| AWS DevOps, App-Entwickler |
Aufgabe | Beschreibung | Erforderliche Fähigkeiten |
---|---|---|
Identifizieren und weisen Sie eine Domain zu. | Für die E-Mail-Weiterleitungsfunktion ist eine dedizierte Domain erforderlich. Identifizieren und weisen Sie eine Domain oder Subdomain zu, die Sie bei Amazon verifizieren können. SES Diese Domain sollte für den Empfang eingehender E-Mails in dem Land verfügbar sein, in AWS-Konto dem die E-Mail-Weiterleitungslösung eingesetzt wird. Anforderungen an die Domain:
| Cloud-Administrator, Netzwerkadministrator, DNS Administrator |
Überprüfen Sie die Domain. | Stellen Sie sicher, dass die identifizierte Domain verwendet werden kann, um eingehende E-Mails zu akzeptieren. Folgen Sie den Anweisungen unter Verifizieren Ihrer Domain für den SES E-Mail-Empfang durch Amazon in der SES Amazon-Dokumentation. Dies erfordert eine Abstimmung mit der Person oder dem Team, die für die DNS Aufzeichnungen der Domain verantwortlich ist. | App-Entwickler, AWS DevOps |
Richten Sie MX-Einträge ein. | Richten Sie Ihre Domain mit MX-Einträgen ein, die auf die SES Amazon-Endpunkte in Ihrer Region AWS-Konto und Ihrer Region verweisen. Weitere Informationen finden Sie in der SESAmazon-Dokumentation unter Veröffentlichen eines MX-Eintrags für den SES E-Mail-Empfang von Amazon. | Cloud-Administrator, Netzwerkadministrator, DNS Administrator |
Aufgabe | Beschreibung | Erforderliche Fähigkeiten |
---|---|---|
Ändern Sie die Standardwerte in | Bearbeiten Sie einige der Standardwerte in der
| App-Entwickler, AWS DevOps |
Stellen Sie die Lösung für den Verkauf und die Weiterleitung von E-Mails bereit. |
| App-Entwickler, AWS DevOps |
Stellen Sie sicher, dass die Lösung bereitgestellt wurde. | Stellen Sie sicher, dass die Lösung erfolgreich bereitgestellt wurde, bevor Sie mit dem Testen beginnen:
| App-Entwickler, AWS DevOps |
Aufgabe | Beschreibung | Erforderliche Fähigkeiten |
---|---|---|
Stellen Sie sicher, API dass das funktioniert. | In diesem Schritt senden Sie Testdaten an die Lösung API und bestätigen, dass die Lösung die erwartete Ausgabe erzeugt und dass die Backend-Operationen wie erwartet ausgeführt wurden. Führen Sie die Lambda-Funktion von Vend Email mithilfe der Testeingabe manuell aus. (Ein Beispiel finden Sie in der Datei sample_vend_request.json | App-Entwickler, AWS DevOps |
Stellen Sie sicher, dass die E-Mail weitergeleitet wird. | In diesem Schritt senden Sie eine Test-E-Mail über das System und überprüfen, ob die E-Mail an den erwarteten Empfänger weitergeleitet wurde.
| App-Entwickler, AWS DevOps |
Fehlerbehebung
Problem | Lösung |
---|---|
Das System leitet E-Mails nicht wie erwartet weiter. | Vergewissern Sie sich, dass Ihre Einrichtung korrekt ist:
Gehen Sie wie folgt vor, nachdem Sie Ihre Domain-Einrichtung verifiziert haben:
|
Wenn Sie versuchen, den AWS CDK Stack bereitzustellen, erhalten Sie eine Fehlermeldung, die der folgenden ähnelt: „Fehler im Vorlagenformat: Unbekannte Ressourcentypen“ | In den meisten Fällen bedeutet diese Fehlermeldung, dass die Region, auf die Sie abzielen, nicht über alle verfügbaren AWS Dienste verfügt. Wenn Sie eine EC2 Amazon-Instance für die Bereitstellung der Lösung verwenden, zielen Sie möglicherweise auf eine Region ab, die sich von der Region unterscheidet, in der die Instance ausgeführt wird. Hinweis: Standardmäßig erfolgt die Bereitstellung in AWS CDK der Region und dem Konto, die Sie in der AWS CLI konfiguriert haben. Mögliche Lösungen:
|
Wenn Sie die Lösung bereitstellen, erhalten Sie die folgende Fehlermeldung: „Die Bereitstellung ist fehlgeschlagen: Fehler AwsMailFwdStack:: SSM parameter /cdk-bootstrap/hnb659fds/version nicht gefunden. Wurde für die Umgebung ein Bootstrapping durchgeführt? Bitte führe 'cdk bootstrap' aus | Wenn Sie noch nie AWS CDK Ressourcen für die AWS-Konto Zielregion bereitgestellt haben, müssen Sie zuerst den Um dieses Problem zu lösen, legen Sie die |
Zugehörige Ressourcen
Hilfe bei der AWS CLI Installation von finden Sie unter Installation oder Aktualisierung auf die neueste Version von. AWS CLI
Hilfe beim Einrichten von AWS CLI mit IAM Zugangsdaten finden Sie unter Konfiguration der Einstellungen für AWS CLI.
Hilfe zu dem AWS CDK finden Sie unter Erste Schritte mit dem AWS CDK.
Zusätzliche Informationen
Kosten
Wenn Sie diese Lösung einsetzen, können dem AWS-Konto Inhaber Kosten entstehen, die mit der Nutzung der folgenden Dienste verbunden sind. Es ist wichtig, dass Sie wissen, wie diese Dienste in Rechnung gestellt werden, damit Sie sich über mögliche Gebühren im Klaren sind. Preisinformationen finden Sie auf den folgenden Seiten: