Utilisation de filtres d'adresses IP pour la réception d'e-mails dans Amazon SES - AWS SDK for JavaScript

Nous avons annoncé la sortie end-of-support de la AWS SDK for JavaScript v2. Nous vous recommandons de migrer vers la AWS SDK for JavaScript version 3. Pour les dates, les détails supplémentaires et les informations sur la façon de migrer, reportez-vous à l'annonce associée.

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Utilisation de filtres d'adresses IP pour la réception d'e-mails dans Amazon SES

JavaScript code example that applies to Node.js execution

Cet exemple de code Node.js présente :

  • La création de filtres d'adresses IP pour accepter ou rejeter les messages provenant d'une adresse IP ou d'une plage d'adresses IP.

  • La liste de vos filtres d'adresses IP actuels.

  • La suppression d'un filtre d'adresses IP

Dans Amazon SES, un filtre est une structure de données composée d'un nom, d'une plage d'adresses IP et indiquant s'il faut autoriser ou bloquer le courrier provenant de ce filtre. Les adresses IP que vous souhaitez bloquer ou autoriser sont spécifiées comme adresse IP unique ou plage d'adresses IP en notation CIDR (Classless Inter-Domain Routing). Pour en savoir plus sur la manière dont Amazon SES reçoit les e-mails, consultez les concepts de réception d'e-mails d'Amazon SES dans le manuel Amazon Simple Email Service Developer Guide.

Scénario

Dans cet exemple, vous utilisez une série de modules Node.js pour envoyer un e-mail de plusieurs façons. Les modules Node.js utilisent le SDK pour JavaScript créer et utiliser des modèles de courrier électronique en utilisant les méthodes suivantes de la classe AWS.SES client :

Tâches prérequises

Pour configurer et exécuter cet exemple, vous devez d'abord :

Configuration du kit SDK

Configurez le SDK pour JavaScript en créant un objet de configuration global, puis en définissant la région pour votre code. Dans cet exemple, la région est us-west-2.

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

Création d'un filtre d'adresses IP

Dans cet exemple, utilisez un module Node.js pour envoyer un e-mail avec Amazon SES. Créez un module Node.js nommé ses_createreceiptfilter.js. Configurez le kit SDK comme illustré précédemment.

Créez un objet pour transmettre les valeurs de paramètre qui définissent le filtre IP, y compris le nom du filtre, une adresse IP ou une plage d'adresses IP à filtrer et l'autorisation ou le blocage du trafic d'e-mails à partir des adresses filtrées. Pour appeler la méthode createReceiptFilter, créez une promesse pour appeler un objet de service Amazon SES, en transmettant les paramètres. Traitez ensuite l'élément response dans le rappel de promesse.

// 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); });

Pour exécuter l'exemple, entrez ce qui suit dans la ligne de commande. Le filtre est créé dans Amazon SES.

node ses_createreceiptfilter.js

Cet exemple de code se trouve ici sur GitHub.

Liste de vos filtres d'adresses IP.

Dans cet exemple, utilisez un module Node.js pour envoyer un e-mail avec Amazon SES. Créez un module Node.js nommé ses_listreceiptfilters.js. Configurez le kit SDK comme illustré précédemment.

Créez un objet de paramètre vide. Pour appeler la méthode listReceiptFilters, créez une promesse pour appeler un objet de service Amazon SES, en transmettant les paramètres. Traitez ensuite l'élément response dans le rappel de promesse.

// 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); });

Pour exécuter l'exemple, entrez ce qui suit dans la ligne de commande. Amazon SES renvoie la liste des filtres.

node ses_listreceiptfilters.js

Cet exemple de code se trouve ici sur GitHub.

Suppression d'un filtre d'adresses IP

Dans cet exemple, utilisez un module Node.js pour envoyer un e-mail avec Amazon SES. Créez un module Node.js nommé ses_deletereceiptfilter.js. Configurez le kit SDK comme illustré précédemment.

Créez un objet pour transmettre le nom du filtre IP à supprimer. Pour appeler la méthode deleteReceiptFilter, créez une promesse pour appeler un objet de service Amazon SES, en transmettant les paramètres. Traitez ensuite l'élément response dans le rappel de promesse.

// 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); });

Pour exécuter l'exemple, entrez ce qui suit dans la ligne de commande. Le filtre est supprimé d'Amazon SES.

node ses_deletereceiptfilter.js

Cet exemple de code se trouve ici sur GitHub.