View a markdown version of this page

Abrufen Ihrer Amazon-SES-SMTP-Anmeldeinformationen - Amazon Simple Email Service

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.

Abrufen Ihrer Amazon-SES-SMTP-Anmeldeinformationen

Sie benötigen SMTP-Anmeldeinformationen für Amazon SES, um auf die SES-SMTP-Schnittstelle zugreifen zu können.

Die Anmeldeinformationen, die Sie zum Senden von E-Mails über die SES SMTP-Schnittstelle verwenden, sind für jede AWS Region einzigartig. Wenn Sie die SES-SMTP-Schnittstelle zum Senden von E-Mails in mehr als einer Region verwenden, müssen Sie einen Satz von SMTP-Anmeldeinformationen für jede Region erstellen.

Ihr SMTP-Passwort unterscheidet sich von Ihrem AWS geheimen Zugangsschlüssel. Weitere Informationen zu Anmeldeinformationen finden Sie unter Arten von Amazon-SES-Anmeldeinformationen.

Anmerkung

Eine Liste der derzeit verfügbaren SMTP-Endpunkte finden Sie unter SMTP-Endpunkte im. Allgemeine AWS-Referenz

Abrufen der SES-SMTP-Anmeldeinformationen über die SES-Konsole

Anforderung

Ein IAM-Benutzer kann SES-SMTP-Anmeldeinformationen erstellen, die Richtlinie des Benutzers muss diesen jedoch die Berechtigung zur Nutzung von IAM selbst erteilen, da die SES-SMTP-Anmeldeinformationen mit IAM erstellt werden. Ihre IAM-Richtlinie muss es Ihnen ermöglichen, die folgenden IAM-Aktionen auszuführen:iam:CreateUser,, und. iam:CreateGroup iam:PutGroupPolicy iam:AddUserToGroup iam:CreateAccessKey Wenn Sie versuchen, SES-SMTP-Anmeldeinformationen mithilfe der Konsole zu erstellen und Ihr IAM-Benutzer nicht über diese Berechtigungen verfügt, wird möglicherweise ein Fehler angezeigt, oder die SMTP-Anmeldeinformationen werden möglicherweise ohne die richtigen Richtlinieneinstellungen erstellt.

Wichtig

Einige der oben genannten IAM-Aktionen, insbesondere iam:PutGroupPolicy undiam:AddUserToGroup, haben die Zugriffsebene für die Berechtigungsverwaltung, die höchste IAM-Ebene, da sie die Berechtigung zum Erteilen oder Ändern von Ressourcenberechtigungen im Service erteilt. Um die Sicherheit Ihres AWS Kontos zu verbessern, wird daher dringend empfohlen, diese Richtlinien, zu denen auch die Klassifizierung der Zugriffsebenen „Rechteverwaltung“ gehört, einzuschränken oder regelmäßig zu überwachen.

So erstellen Sie Ihre SMTP-Anmeldeinformationen
  1. Melden Sie sich bei der an AWS-Managementkonsole und öffnen Sie die Amazon SES-Konsole unter https://console.aws.amazon.com/ses/.

  2. Wählen Sie SMTP-Einstellungen im linken Navigationsbereich aus. Dadurch wird die Seite Simple Mail Transfer Protocol (SMTP) settings (Einstellungen für Simple Mail Transfer Protocol (SMTP) geöffnet.

  3. Wählen Sie Create SMTP Credentials (SMTP-Anmeldeinformationen erstellen) aus. In der oberen rechten Ecke wird die IAM-Konsole geöffnet.

  4. (Optional) Wenn Sie bereits erstellte SMTP-Benutzer anzeigen, bearbeiten oder löschen müssen, wählen Sie unten rechts Manage my existing SMTP credentials (Meine vorhandenen SMTP-Zugangsdaten verwalten) aus. Die IAM-Konsole wird geöffnet. Details zum Verwalten von SMTP-Anmeldeinformationen werden nach diesen Verfahren angegeben.

  5. Geben Sie für Benutzer für SMTP erstellen  einen Namen für Ihren SMTP-Benutzer in das Feld Benutzername ein. Alternativ können Sie den Standardwert verwenden, der in diesem Feld bereitgestellt wird. Wenn Sie fertig sind, wählen Sie Erstellen  in der unteren rechten Ecke.

  6. Wählen Sie Anzeigen unter SMTP-Passwort – Ihre SMTP-Anmeldeinformationen werden auf dem Bildschirm angezeigt.

  7. Laden Sie diese Anmeldeinformationen herunter, indem Sie CSV-Datei herunterladen auswählen, oder kopieren Sie sie und speichern Sie sie an einem sicheren Ort, da Sie Ihre Anmeldeinformationen nach dem Schließen dieses Dialogfelds nicht anzeigen oder speichern können.

  8. Wählen Sie Zurück zur SES-Konsole aus.

Sie können eine Liste der SMTP-Anmeldeinformationen anzeigen, die Sie mit diesem Verfahren erstellt haben. Wählen Sie dazu in der IAM-Konsole unter Access management (Zugriffsverwaltung) die Option Users (Benutzer) aus und suchen Sie über die Suchleiste nach allen Benutzern, denen Sie SMTP-Anmeldeinformationen zugewiesen haben.

Sie können die IAM-Konsole auch verwenden, um vorhandene SMTP-Benutzer zu löschen. Weitere Informationen zum Löschen von Benutzern finden Sie unter Verwalten von IAM-Benutzern im IAM – Handbuch „Erste Schritte“.

Wenn Sie Ihr SMTP-Passwort ändern möchten, löschen Sie Ihren vorhandenen SMTP-Benutzer in der IAM-Konsole. Führen Sie anschließend die oben beschriebenen Schritte aus, um einen neuen Satz von SMTP-Anmeldeinformationen zu generieren.

Abrufen der SES-SMTP-Anmeldeinformationen durch Konvertierung vorhandener AWS Anmeldedaten

Wenn Sie einen Benutzer haben, den Sie mithilfe der IAM-Schnittstelle eingerichtet haben, können Sie die SES-SMTP-Anmeldeinformationen des Benutzers aus seinen Anmeldeinformationen ableiten. AWS

Wichtig

Verwenden Sie keine temporären AWS Anmeldeinformationen, um SMTP-Anmeldeinformationen abzuleiten. Die SES-SMTP-Schnittstelle unterstützt keine SMTP-Anmeldeinformationen, die von temporären Sicherheitsanmeldeinformationen generiert wurden.

Um es dem IAM-Benutzer zu ermöglichen, E-Mails über die SES-SMTP-Schnittstelle zu senden
  1. Leiten Sie die SMTP-Anmeldeinformationen des Benutzers von seinen AWS Anmeldeinformationen ab, indem Sie den in diesem Abschnitt bereitgestellten Algorithmus verwenden und dabei die folgenden Verfahren befolgen.

    Da Sie mit den AWS Anmeldeinformationen beginnen, ist der SMTP-Benutzername mit der AWS Zugriffsschlüssel-ID identisch, sodass Sie nur das SMTP-Passwort generieren müssen.

  2. Melden Sie sich bei der an AWS-Managementkonsole und öffnen Sie die IAM-Konsole unter. https://console.aws.amazon.com/iam/

  3. Wählen Sie unter Zugriffsverwaltung die Option Richtlinien und anschließend Richtlinie erstellen aus.

  4. Wählen Sie im Richtlinieneditor JSON aus und entfernen Sie jeglichen Beispielcode im Editor.

  5. Fügen Sie die folgende Berechtigungsrichtlinie in den Editor ein:

    JSON
    { "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "ses:SendRawEmail", "Resource": "*" } ] }
  6. Wählen Sie Weiter und geben Sie den AmazonSesSendingAccess Text in das Feld Richtlinienname ein, gefolgt von Richtlinie erstellen.

  7. Wählen Sie unter Zugriffsverwaltung die Option Benutzergruppen und dann Gruppe erstellen aus.

  8. Geben Sie den Namen der Benutzergruppe AWSSESSendingGroupDoNotRename in das Feld Benutzergruppenname ein.

  9. Fügen Sie der Gruppe SMTP-Benutzer hinzu, indem Sie sie in der Tabelle Benutzer zur Gruppe hinzufügen auswählen.

  10. Hängen Sie die zuvor erstellte AmazonSesSendingAccess Richtlinie an, indem Sie sie in der Tabelle „Richtlinien für Dateiberechtigungen anhängen“ auswählen, gefolgt von „Benutzergruppe erstellen“.

Weitere Informationen zur Verwendung von SES mit IAM finden Sie unter Identity and Access Management in Amazon S3.

Anmerkung

Sie können zwar SES-SMTP-Anmeldeinformationen für alle IAM-Benutzer generieren, allerdings empfehlen wir, bei der Generierung Ihrer SMTP-Anmeldeinformationen einen separaten IAM-Benutzer zu erstellen. Weitere Informationen zu bewährten Methoden bei der Erstellung von Benutzern für bestimmte Zwecke gehen Sie zu Bewährte Methoden für IAM.

Der folgende Pseudocode zeigt den Algorithmus, der einen AWS geheimen Zugriffsschlüssel in ein SES-SMTP-Passwort konvertiert.

// Modify this variable to include your AWS secret access key key = "wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY"; // Modify this variable to refer to the AWS Region that you want to use to send email. region = "us-west-2"; // The values of the following variables should always stay the same. date = "11111111"; service = "ses"; terminal = "aws4_request"; message = "SendRawEmail"; version = 0x04; kDate = HmacSha256(date, "AWS4" + key); kRegion = HmacSha256(region, kDate); kService = HmacSha256(service, kRegion); kTerminal = HmacSha256(terminal, kService); kMessage = HmacSha256(message, kTerminal); signatureAndVersion = Concatenate(version, kMessage); smtpPassword = Base64(signatureAndVersion);

Einige Programmiersprachen enthalten Bibliotheken, die Sie verwenden können, um einen geheimen IAM-Zugriffsschlüssel in ein SMTP-Passwort zu konvertieren. Dieser Abschnitt enthält ein Codebeispiel, mit dem Sie einen AWS geheimen Zugriffsschlüssel mithilfe von Python in ein SES-SMTP-Passwort konvertieren können.

Anmerkung
  • Im folgenden Beispiel werden f-Zeichenfolgen verwendet, die in Python 3.6 eingeführt wurden. Wenn Sie eine ältere Version verwenden, funktionieren sie nicht.

  • Im folgenden Beispiel ist die Liste der SMTP_REGIONS lediglich ein Beispiel. Ihre tatsächliche Liste der Regionen könnte kürzer oder länger sein, je nachdem, in welchen Regionen Sie E-Mails senden möchten, da Sie für jede Region SMTP-Anmeldeinformationen benötigen. AWS-Region

Python
#!/usr/bin/env python3 import hmac import hashlib import base64 import argparse SMTP_REGIONS = [ "us-east-2", # US East (Ohio) "us-east-1", # US East (N. Virginia) "us-west-2", # US West (Oregon) "ap-south-1", # Asia Pacific (Mumbai) "ap-northeast-2", # Asia Pacific (Seoul) "ap-southeast-1", # Asia Pacific (Singapore) "ap-southeast-2", # Asia Pacific (Sydney) "ap-northeast-1", # Asia Pacific (Tokyo) "ca-central-1", # Canada (Central) "eu-central-1", # Europe (Frankfurt) "eu-west-1", # Europe (Ireland) "eu-west-2", # Europe (London) "eu-south-1", # Europe (Milan) "eu-north-1", # Europe (Stockholm) "sa-east-1", # South America (Sao Paulo) "us-gov-west-1", # AWS GovCloud (US) "us-gov-east-1", # AWS GovCloud (US) ] # These values are required to calculate the signature. Do not change them. DATE = "11111111" SERVICE = "ses" MESSAGE = "SendRawEmail" TERMINAL = "aws4_request" VERSION = 0x04 def sign(key, msg): return hmac.new(key, msg.encode("utf-8"), hashlib.sha256).digest() def calculate_key(secret_access_key, region): if region not in SMTP_REGIONS: raise ValueError(f"The {region} Region doesn't have an SMTP endpoint.") signature = sign(("AWS4" + secret_access_key).encode("utf-8"), DATE) signature = sign(signature, region) signature = sign(signature, SERVICE) signature = sign(signature, TERMINAL) signature = sign(signature, MESSAGE) signature_and_version = bytes([VERSION]) + signature smtp_password = base64.b64encode(signature_and_version) return smtp_password.decode("utf-8") def main(): parser = argparse.ArgumentParser( description="Convert a Secret Access Key to an SMTP password." ) parser.add_argument("secret", help="The Secret Access Key to convert.") parser.add_argument( "region", help="The AWS Region where the SMTP password will be used.", choices=SMTP_REGIONS, ) args = parser.parse_args() print(calculate_key(args.secret, args.region)) if __name__ == "__main__": main()

Um Ihr SMTP-Kennwort mithilfe dieses Skripts zu erhalten, speichern Sie den vorhergehenden Code als smtp_credentials_generate.py. Führen Sie in der Befehlszeile den folgenden Befehl aus.

python path/to/smtp_credentials_generate.py wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY us-east-1

Gehen Sie im vorhergehenden Befehl wie folgt vor:

  • Ersetzen Sie sie durch den Pfad zu path/to/ dem Speicherort, an dem Sie gespeichert haben. smtp_credentials_generate.py

  • wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEYErsetzen Sie ihn durch den geheimen Zugriffsschlüssel, den Sie in ein SMTP-Passwort umwandeln möchten.

  • us-east-1Ersetzen Sie es durch die AWS Region, in der Sie die SMTP-Anmeldeinformationen verwenden möchten.

Wenn dieses Skript erfolgreich ausgeführt wird, ist die einzige Ausgabe Ihr SMTP-Kennwort.

Migration eines SMTP-Benutzers von einer vorhandenen Inline-Richtlinie zu einer Gruppenrichtlinie (Sicherheitsempfehlung)

Wichtig

Wenn Sie vor dem 6. September 2024 SES-SMTP-Anmeldeinformationen erstellt haben, wurden Ihrem SMTP-Benutzer eine Inline-Richtlinie und ein Tag angehängt. SES entfernt sich von Inline-Richtlinien und empfiehlt Ihnen, dasselbe als Sicherheitsempfehlung zu tun.

Bevor Sie einen SMTP-Benutzer von einer vorhandenen Inline-Richtlinie zu einer Gruppenrichtlinie migrieren, müssen Sie zunächst eine IAM-Benutzergruppe mit der SES-Berechtigungsrichtlinie erstellen, die die Inline-Richtlinie ersetzt. Wenn Sie diese IAM-Benutzergruppe bereits erstellt haben oder sie automatisch für SMTP-Anmeldeinformationen erstellt wurde, die Sie ab dem 6. September 2024 erstellt haben, können Sie in den folgenden Verfahren direkt mit Schritt 10 fortfahren.

So migrieren Sie von einer vorhandenen Inline-Richtlinie zu einer verwalteten Gruppe
  1. Melden Sie sich bei der an AWS-Managementkonsole und öffnen Sie die IAM-Konsole unter https://console.aws.amazon.com/iam/.

  2. Wählen Sie unter Zugriffsverwaltung die Option Richtlinien und anschließend Richtlinie erstellen aus.

  3. Wählen Sie im Richtlinieneditor JSON aus und entfernen Sie jeglichen Beispielcode im Editor.

  4. Fügen Sie die folgende Berechtigungsrichtlinie in den Editor ein:

    JSON
    { "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "ses:SendRawEmail", "Resource": "*" } ] }
  5. Wählen Sie Weiter und geben Sie den AmazonSesSendingAccess Text in das Feld Richtlinienname ein, gefolgt von Richtlinie erstellen.

  6. Wählen Sie unter Zugriffsverwaltung die Option Benutzergruppen und dann Gruppe erstellen aus.

  7. Geben Sie den Namen der Benutzergruppe AWSSESSendingGroupDoNotRename in das Feld Benutzergruppenname ein.

  8. Fügen Sie der Gruppe SMTP-Benutzer hinzu, indem Sie sie in der Tabelle Benutzer zur Gruppe hinzufügen auswählen.

  9. Hängen Sie die zuvor erstellte AmazonSesSendingAccess Richtlinie an, indem Sie sie in der Tabelle „Richtlinien für Dateiberechtigungen anhängen“ auswählen, gefolgt von „Benutzergruppe erstellen“.

    Nachdem Sie die IAM-Benutzergruppe mit der SES-Berechtigungsrichtlinie erstellt haben, können Sie einen SMTP-Benutzer von seiner aktuellen Inline-Richtlinie zu dieser Gruppenrichtlinie migrieren, wie in den verbleibenden Schritten beschrieben.

  10. Wählen Sie unter Zugriffsverwaltung die Option Benutzer und anschließend den SMTP-Benutzer aus, den Sie migrieren möchten.

  11. Wählen Sie die Registerkarte Gruppen und dann Benutzer zu Gruppen hinzufügen aus.

  12. Wählen Sie die AWSSESSendingGroupDoNotRename Gruppe aus, gefolgt von Benutzer zu Gruppe (n) hinzufügen.

  13. Wählen Sie die Registerkarte Berechtigungen aus und vergewissern Sie sich, dass in AmazonSesSendingAccess der Spalte Richtlinienname zwei Zeilen mit dem Eintrag Inline“ und eine mit „Gruppe“ in der Spalte „Angehängt über“ AWSSESSendingGroupDoNotRename aufgeführt sind.

  14. Wählen Sie nur die Zeile aus, die AmazonSesSendingAccess in der Spalte Richtlinienname und Inline in der Spalte Angehängt über, gefolgt von Entfernen, und bestätigen Sie mit Richtlinie entfernen.

    Vergewissern Sie sich, dass die Zeile mit Gruppe AWSSESSendingGroupDoNotRename in der Spalte Angehängt über noch übrig ist.

  15. Wählen Sie den Tab „Tags“ und dann „Schlagworte verwalten“ aus.

  16. Wählen Sie Entfernen neben der Zeile InvokedBy in der Schlüsselspalte und SesConsole in der Spalte Wert gefolgt von Änderungen speichern aus.

Wichtig

Die AmazonSesSendingAccess Richtlinie (entweder als Inline- oder Gruppenrichtlinie oder als beides) muss an den SMTP-Benutzer gebunden bleiben, um sicherzustellen, dass dessen Versand nicht beeinträchtigt wird. Entfernen Sie die Inline-Richtlinie erst, nachdem die Gruppenrichtlinie an Ihren Benutzer angehängt wurde.