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 trennen können, die einem Konto zugeordnet ist. AWS AWSKonten erfordern, dass bei der Kontoerstellung eine eindeutige E-Mail-Adresse angegeben wird. In einigen Organisationen muss das Team, das die AWS Konten verwaltet, die Last der Verwaltung vieler eindeutiger E-Mail-Adressen mit seinem Messaging-Team übernehmen. Dies kann für große Organisationen, die viele AWS Konten verwalten, schwierig sein.
Dieses Muster bietet eine einzigartige Lösung für den Verkauf von E-Mail-Adressen, mit der AWS Kontoinhaber eine E-Mail-Adresse mehreren AWS Konten zuordnen können. Die echten E-Mail-Adressen der AWS Kontoinhaber 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
Administratorzugriff auf ein AWS Konto.
Zugriff auf eine Entwicklungsumgebung. Wir empfehlen Ihnen, AWS Cloud9 zu verwenden, um zu vermeiden, dass Sie die benötigten Tools und Zugriffsschlüssel selbst einrichten müssen.
(Optional) Wenn Sie mit den Workflows des AWS Cloud Development Kit (AWSCDK) 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 AWSAPIOrganisationsreferenz.
Produktversionen
Node.js Version 12.7.0 oder höher
Python 3.9 oder höher
Python-Pakete pip und virtualenv
AWSCDKVersion 2.23.0 oder höher
Docker 20.10.x oder höher
Architektur
Zieltechnologie-Stack
AWS CloudFormation stapeln
AWSLambda-Funktionen
Regel und Regelsatz für Amazon Simple Email Address (AmazonSES)
AWSRollen und Richtlinien für Identity and Access Management (IAM)
Bucket- und Bucket-Richtlinie für Amazon Simple Storage Service (Amazon S3)
AWSSchlüssel und Schlüsselrichtlinie für den Key Management Service (AWSKMS)
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 ein neues AWS Konto zu erstellen (normalerweise mithilfe von AWS Organizations).
Ablauf der E-Mail-Weiterleitung: Dieser Ablauf ist im oberen Abschnitt des vorherigen Diagramms dargestellt. Wenn ein AWS Konto mithilfe der Konto-E-Mail erstellt wird, die beim Verkauf von E-Mail-Adressen 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 AWS Konto bei Amazon für SES den Empfang von E-Mails für die gesamte Domain. 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 AWSCDK, 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 unter Lambda-Funktionsskalierung in der Lambda-Dokumentation.
Tools
AWSDienste
AWSCloud9 ist eine integrierte Entwicklungsumgebung (IDE), mit der Sie Software programmieren, erstellen, ausführen, testen und debuggen können. Sie hilft Ihnen auch dabei, Software in der AWS Cloud zu veröffentlichen.
AWS CloudFormationhilft Ihnen dabei, AWS Ressourcen einzurichten, sie schnell und konsistent bereitzustellen und sie während ihres gesamten Lebenszyklus über AWS Konten und Regionen hinweg zu verwalten.
AWSCommand Line Interface (AWSCLI) 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.
AWSIdentity 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.
AWSMit dem Key Management Service (AWSKMS) können Sie kryptografische Schlüssel erstellen und kontrollieren, um Ihre Daten zu schützen.
AWSLambda ist 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 Ihr AWS Konto. Einzelheiten finden Sie unter den Links im Abschnitt Verwandte Ressourcen. Wir empfehlen Ihnen, AWS Cloud9 zu verwenden, um den Einrichtungsprozess zu vereinfachen.
Wenn Sie AWS Cloud9 verwenden, wird Folgendes für Sie konfiguriert. Wenn Sie AWS Cloud9 nicht verwenden möchten, müssen Sie Folgendes installieren:
Die AWSCLI, um die Zugangsdaten für die AWS CDK zu konfigurieren. Weitere Informationen finden Sie in der AWSCLIDokumentation.
Python-Version 3.9 oder höher
Python-Pakete pip und virtualenv
Node.js Version 12.7.0 oder höher
AWSCDKVersion 2.23.0 oder höher
Docker-Version 20.10.x oder höher
Code
Der Code für dieses Muster ist im E-Mail-Repository von GitHub AWSAccount Factory
Epen
Aufgabe | Beschreibung | Erforderliche Fähigkeiten |
---|---|---|
Identifizieren oder erstellen Sie ein 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 innerhalb des AWS Kontos verfügbar sein, in 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 Ihrem 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 cdk.json. | 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. | Stellen Sie sicher, 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 AWS Cloud9 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 AWS Cloud9-Instanz ausgeführt wird. Hinweis: Standardmäßig erfolgt die Bereitstellung in der AWS CDK Region und dem Konto, das Sie in der konfiguriert haben. AWS CLI Mögliche Lösungen:
|
Wenn Sie die Lösung bereitstellen, erhalten Sie die folgende Fehlermeldung: „Die Bereitstellung ist fehlgeschlagen: Fehler AwsMailFwdStack: Der SSM Parameter /cdk-bootstrap/hnb659fds/version wurde nicht gefunden. Wurde für die Umgebung ein Bootstrapping durchgeführt? Bitte starte 'cdk bootstrap'“ | Wenn Sie noch nie AWS CDK Ressourcen für das AWS Konto und die Region bereitgestellt haben, auf die Sie abzielen, 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 Installieren oder Aktualisieren der neuesten Version von. AWS CLI
Hilfe beim Einrichten von AWS CLI mit IAM Zugangsdaten finden Sie unter Konfigurieren von 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 Kontoinhaber 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: