Verwenden von IP-Adressfiltern für den E-Mail-Empfang in Amazon SES - AWS SDK for JavaScript

Wir haben das Kommende end-of-support für AWS SDK for JavaScript v2 angekündigt. Wir empfehlen Ihnen, auf AWS SDK for JavaScript Version 3 zu migrieren. Termine, weitere Details und Informationen zur Migration finden Sie in der verlinkten Ankündigung.

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.

Verwenden von IP-Adressfiltern für den E-Mail-Empfang in Amazon SES

JavaScript code example that applies to Node.js execution

Dieses Node.js-Codebeispiel zeigt:

  • das Erstellen von IP-Adressfiltern, um E-Mails, die von einer IP-Adresse oder einem IP-Adressbereich stammen, zu akzeptieren oder abzulehnen.

  • das Auflisten Ihrer aktuellen IP-Adressfilter.

  • das Löschen eines IP-Adressfilters.

In Amazon SES ist ein Filter eine Datenstruktur, die aus einem Namen, einem IP-Adressbereich und der Angabe besteht, ob E-Mails aus diesem Bereich zugelassen oder blockiert werden sollen. IP-Adressen, die Sie blockieren oder zulassen möchten, werden als eine einzelne IP-Adresse oder ein IP-Adressbereich in einer Classless Inter-Domain Routing(CIDR)-Notation festgelegt. Einzelheiten darüber, wie Amazon SES E-Mails empfängt, finden Sie unter Amazon SES Email-Receiving Concepts im Amazon Simple Email Service Developer Guide.

Das Szenario

In diesem Beispiel werden mehrere Node.js-Module verwendet, um E-Mails auf verschiedene Weisen zu senden. Die Module Node.js verwenden das SDK für JavaScript die Erstellung und Verwendung von E-Mail-Vorlagen mit den folgenden Methoden der AWS.SES Client-Klasse:

Erforderliche Aufgaben

Zum Einrichten und Ausführen dieses Beispiels müssen Sie zunächst diese Aufgaben abschließen:

Konfigurieren des SDKs

Konfigurieren Sie das SDK für, JavaScript indem Sie ein globales Konfigurationsobjekt erstellen und dann die Region für Ihren Code festlegen. In diesem Beispiel ist die Region auf us-west-2 festgelegt.

// Load the SDK for JavaScript var AWS = require('aws-sdk'); // Set the Region AWS.config.update({region: 'us-west-2'});

Erstellen eines IP-Adressfilters

In diesem Beispiel verwenden Sie ein Node.js-Modul zum Senden von E-Mail mit Amazon SES. Erstellen Sie ein Node.js-Modul mit dem Dateinamen ses_createreceiptfilter.js. Konfigurieren Sie das SDK wie zuvor dargestellt.

Erstellen Sie ein Objekt, um die Parameterwerte zu übergeben, die den IP-Filter definieren, einschließlich dem Filternamen, einer IP-Adresse bzw. einem bestimmten Adressbereich, nach denen gefiltert werden soll, und ob Datenverkehr von den gefilterten E-Mail-Adressen zugelassen oder blockiert werden soll. Um die createReceiptFilter-Methode aufzurufen, erstellen Sie ein Promise für den Aufruf eines Amazon SES-Serviceobjekts und übergeben die Parameter. Verarbeiten Sie anschließend die response im Promise-Callback.

// Load the AWS SDK for Node.js var AWS = require("aws-sdk"); // Set the region AWS.config.update({ region: "REGION" }); // Create createReceiptFilter params var params = { Filter: { IpFilter: { Cidr: "IP_ADDRESS_OR_RANGE", Policy: "Allow" | "Block", }, Name: "NAME", }, }; // Create the promise and SES service object var sendPromise = new AWS.SES({ apiVersion: "2010-12-01" }) .createReceiptFilter(params) .promise(); // Handle promise's fulfilled/rejected states sendPromise .then(function (data) { console.log(data); }) .catch(function (err) { console.error(err, err.stack); });

Um das Beispiel auszuführen, geben Sie Folgendes in der Befehlszeile ein. Der Filter wird in Amazon SES erstellt.

node ses_createreceiptfilter.js

Diesen Beispielcode finden Sie hier auf GitHub.

Auflisten Ihrer IP-Adressfilter

In diesem Beispiel verwenden Sie ein Node.js-Modul zum Senden von E-Mail mit Amazon SES. Erstellen Sie ein Node.js-Modul mit dem Dateinamen ses_listreceiptfilters.js. Konfigurieren Sie das SDK wie zuvor dargestellt.

Erstellen eines leeren Parameterobjekts. Um die listReceiptFilters-Methode aufzurufen, erstellen Sie ein Promise für den Aufruf eines Amazon SES-Serviceobjekts und übergeben die Parameter. Verarbeiten Sie anschließend die response im Promise-Callback.

// Load the AWS SDK for Node.js var AWS = require("aws-sdk"); // Set the region AWS.config.update({ region: "REGION" }); // Create the promise and SES service object var sendPromise = new AWS.SES({ apiVersion: "2010-12-01" }) .listReceiptFilters({}) .promise(); // Handle promise's fulfilled/rejected states sendPromise .then(function (data) { console.log(data.Filters); }) .catch(function (err) { console.error(err, err.stack); });

Um das Beispiel auszuführen, geben Sie Folgendes in der Befehlszeile ein. Amazon SES gibt die Filterliste zurück.

node ses_listreceiptfilters.js

Diesen Beispielcode finden Sie hier auf GitHub.

Löschen eines IP-Adressenfilters

In diesem Beispiel verwenden Sie ein Node.js-Modul zum Senden von E-Mail mit Amazon SES. Erstellen Sie ein Node.js-Modul mit dem Dateinamen ses_deletereceiptfilter.js. Konfigurieren Sie das SDK wie zuvor dargestellt.

Erstellen Sie ein Objekt, um den Namen des zu löschenden IP-Filters zu übergeben. Um die deleteReceiptFilter-Methode aufzurufen, erstellen Sie ein Promise für den Aufruf eines Amazon SES-Serviceobjekts und übergeben die Parameter. Verarbeiten Sie anschließend die response im Promise-Callback.

// Load the AWS SDK for Node.js var AWS = require("aws-sdk"); // Set the region AWS.config.update({ region: "REGION" }); // Create the promise and SES service object var sendPromise = new AWS.SES({ apiVersion: "2010-12-01" }) .deleteReceiptFilter({ FilterName: "NAME" }) .promise(); // Handle promise's fulfilled/rejected states sendPromise .then(function (data) { console.log("IP Filter deleted"); }) .catch(function (err) { console.error(err, err.stack); });

Um das Beispiel auszuführen, geben Sie Folgendes in der Befehlszeile ein. Der Filter wird aus Amazon SES gelöscht.

node ses_deletereceiptfilter.js

Diesen Beispielcode finden Sie hier auf GitHub.