Amazon SES アイデンティティの管理 - AWS SDK for JavaScript

AWS SDK for JavaScript v2 の近日発表 end-of-support しました。AWS SDK for JavaScript v3 に移行することをお勧めします。日付、その他の詳細、移行方法については、リンク先の発表内容を参照してください。

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

Amazon SES アイデンティティの管理

JavaScript code example that applies to Node.js execution

この Node.js コード例は以下を示しています。

  • Amazon SES で使用されている E メールアドレスとドメインを確認する方法。

  • Amazon SES アイデンティティに IAM ポリシーを割り当てる方法。

  • AWS アカウントのすべての Amazon SES アイデンティティを一覧表示する方法。

  • Amazon SES で使用されているアイデンティティを削除する方法。

Amazon SES アイデンティティは、Amazon SES が E メールの送信に使用する E メールアドレスまたはドメインです。Amazon SES では、E メールアイデンティティを検証して、それを所有していることを確認し、他のユーザーに使用されないようにする必要があります。

Amazon SES の E メールアドレスとドメインを確認する方法の詳細については、Amazon Simple Email Service デベロッパーガイドの Amazon SES での E メールアドレスとドメインの検証を参照してください。Amazon SES での送信認可の詳細については、Amazon SES 送信認可の概要を参照してください。

シナリオ

この例では、一連の Node.js モジュールを使用して Amazon SES のアイデンティティを検証および管理します。Node.js モジュールは、AWS.SES クライアントクラスの次のメソッドを使用し、SDK for JavaScript を使用して E メールアドレスとドメインを検証します。

前提条件タスク

この例をセットアップして実行するには、まず次のタスクを完了する必要があります。

SDK の設定

グローバル設定オブジェクトを作成してからコードのリージョンを設定することで、SDK for JavaScript を設定します。この例では、リージョンは us-west-2 に設定されています。

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

ID の一覧表示

この例では、Node.js モジュールを使用して Amazon SES で使用する E メールアドレスとドメインを一覧表示します。ses_listidentities.js というファイル名で Node.js モジュールを作成します。前に示したように SDK を設定します。

AWS.SES クライアントクラスの listIdentities メソッドに IdentityType とその他のパラメータを渡すオブジェクトを作成します。listIdentities メソッドを呼び出すには、Amazon SES サービスオブジェクトを呼び出すための promise を作成し、パラメータオブジェクトを渡します。

その後、promise コールバックの response を処理します。promise によって返された data には、IdentityType パラメータで指定されたドメイン ID の配列が含まれています。

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

この例を実行するには、コマンドラインに次のように入力します。

node ses_listidentities.js

このサンプルコードは、このGitHubにあります。

E メールアドレス ID の検証

この例では、Node.js モジュールを使用して Amazon SES で使用する E メールの送信者を検証します。ses_verifyemailidentity.js というファイル名で Node.js モジュールを作成します。前に示したように SDK を設定します。Amazon SES にアクセスするには、AWS.SES サービスオブジェクトを作成します。

AWS.SES クライアントクラスの verifyEmailIdentity メソッドに EmailAddress パラメータを渡すオブジェクトを作成します。verifyEmailIdentity メソッドを呼び出すには、Amazon SES サービスオブジェクトを呼び出すための promise を作成し、パラメータを渡します。その後、promise コールバックの response を処理します。

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

この例を実行するには、コマンドラインに次のように入力します。検証のためにドメインが Amazon SES に追加されます。

node ses_verifyemailidentity.js

このサンプルコードは、このGitHubにあります。

ドメイン ID の検証

この例では、Node.js モジュールを使用して Amazon SES で使用する E メールのドメインを検証します。ses_verifydomainidentity.js というファイル名で Node.js モジュールを作成します。前に示したように SDK を設定します。

AWS.SES クライアントクラスの verifyDomainIdentity メソッドに Domain パラメータを渡すオブジェクトを作成します。verifyDomainIdentity メソッドを呼び出すには、Amazon SES サービスオブジェクトを呼び出すための promise を作成し、パラメータオブジェクトを渡します。その後、promise コールバックの response を処理します。

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

この例を実行するには、コマンドラインに次のように入力します。検証のためにドメインが Amazon SES に追加されます。

node ses_verifydomainidentity.js

このサンプルコードは、このGitHubにあります。

ID の削除

この例では、Node.js モジュールを使用して、Amazon SES で使用されている E メールアドレスまたはドメインを削除します。ses_deleteidentity.js というファイル名で Node.js モジュールを作成します。前に示したように SDK を設定します。

AWS.SES クライアントクラスの deleteIdentity メソッドに Identity パラメータを渡すオブジェクトを作成します。deleteIdentity メソッドを呼び出すには、Amazon SES サービスオブジェクトを呼び出すための request を作成し、パラメータを渡します。その後、promise コールバックの response を処理します。

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

この例を実行するには、コマンドラインに次のように入力します。

node ses_deleteidentity.js

このサンプルコードは、このGitHubにあります。