Amazon SES の ID の作成と検証 - Amazon Simple Email Service

Amazon SES の ID の作成と検証

Amazon SESでは、ドメインレベルでIDを作成することも、EメールアドレスID を作成することもできます。これらのIDタイプは相互に排他的ではありません。ほとんどの場合、ドメインIDを作成することで、特定のEメールアドレスにカスタム構成を適用しない限り、個々のEメールアドレスIDを使用する必要がなくなります。

EメールアドレスIDの作成と検証は、Amazon SESで開始する最も速い方法ですが、ドメインレベルでIDを検証する利点もあります。EメールアドレスIDを検証する時、その特定のEメールアドレスからのみEメールを送信できます。ドメインID を検証する場合、個別に検証することなく、検証済みドメインの任意のサブドメインまたは EメールアドレスからEメールを送信できます。例えば、example.com の ID を作成して検証する場合、a.example.com、a.b.example.com、user@example.com、user@a.example.com などの個別の ID を作成する必要はありません。

同じドメインまたは 1 つ以上のAWS リージョン の E メールアドレスから E メールを送信するには、リージョンごとに個別の ID を作成して検証する必要があります。各地域で10,000個までのIDを検証することができます。

ドメインと E メールアドレス ID を作成および検証するときは、次の点を考慮します。

  • 個別に検証することなく、検証済みドメインの任意のサブドメインまたはE メールアドレスから E メールを送信できます。たとえば、example.com の ID を作成して検証する場合、a.example.com、a.b.example.com、user@example.com、user@a.example.com などの個別の ID を作成する必要はありません。

  • RFC 1034 で規定されているように、各 DNS ラベルには最大で 63 文字を指定することができ、ドメイン名全体の合計文字数は 255 を超えることはできません。

  • ルートドメインを共有するドメイン、サブドメイン、および E メールアドレスを検証する場合、ID 設定 (フィードバック通知など) は検証した最も細かいレベルで適用されます。

    • 検証済み E メールアドレスID設定は、検証済みドメインのID設定をオーバーライドします。

    • 検証済みサブドメインID設定は、検証済みドメインのID設定をオーバーライドします。より低いレベルのサブドメイン設定は、より高いレベルのサブドメイン設定をオーバーライドします。

      たとえば、user@a.b.example.com、a.b.example.com、b.example.com、および example.com を検証するとします。これらは、以下のシナリオで使用される検証済みのアイデンティティ設定です。

      • user@example.com (特別には検証されないEメールアドレス) から送信される E メールは、example.com の設定を使用します。

      • user@a.b.example.com (特別に検証されるEメールアドレス) から送信される E メールは、user@a.b.example.com の設定を使用します。

      • user@b.example.com (特別には検証されないEメールアドレス) から送信される E メールは、b.example.com の設定を使用します。

  • 追加の検証手順を実行せずに、検証済みの E メールアドレスにラベルを追加することができます。E メールアドレスにラベルを追加するには、アカウント名と「at」記号 (@) の間にプラス記号 (+) を付け、続いてテキストラベルを付けます。たとえば、sender@example.comを既に検証している場合は、メールの「From」または「Return-Path」アドレスとして sender+myLabel@example.com を使用することができます。この機能を使用すると、可変エンベロープリターンパス (VERP) を実装できます。その後で、VERP を使用して、メーリングリストから配信不能な E メールアドレスを検出して削除することができます。

  • ドメイン名では大文字と小文字は区別されません。example.com を検証すると、EXAMPLE.com からも送信できます。

  • E メールアドレスでは、大文字と小文字が区別されます。たとえば、sender@EXAMPLE.com を検証した場合、sender@example.com も検証しないと、sender@example.com から E メールを送信できません。

  • AWS リージョンごとに、10,000 個ものID を確認出来ます(ドメインと E メールアドレスの任意の組み合わせ) を含めることができます。

ドメイン ID の作成

ドメインID の作成の一部として、DKIM ベースの検証の設定があります。DomainKeys Identified Mail (DKIM) は、Amazon SES がドメインの所有権を検証するために使用するEメール認証方法であり、受信メールサーバーがEメールの信頼性を検証するために使用するEメール認証方法です。DKIMを設定するには、Easy DKIMまたはBring Your Own DKIM (BYODKIM) のいずれかを使用します。選択に応じて、プライベートキーの署名キーの長さを次のように設定する必要があります。

  • Easy DKIM - Amazon SES のデフォルトである2048 ビットを受け入れるか、1024ビットを選択して上書きします。

  • BYODKIM - プライベートキーの長さは1024 ビット以上、最大2048ビットでなければなりません。

DKIM 署名キーの長さとその変更方法の詳細は、「DKIM 署名キーの長さ」を参照してください。

次の手順では、Amazon SES コンソールを使用してドメイン ID を作成する方法を示します。

  • ドメインを既に作成していて、それを検証するだけの場合は、このページの「DNS プロバイダーでの DKIM ドメイン ID の検証」の手順に進んでください。

    注記

    ドメインIDを検証するには、ドメインのDNS設定にアクセスする必要があります。これらの設定への変更が反映されるまでに最大48時間かかる場合があります。

ドメインIDの作成方法

  1. AWS Management Console にサインインして Amazon SES コンソール (https://console.aws.amazon.com/ses/) を開きます。

  2. ナビゲーションペインの設定で、検証済みIDを選択します。

  3. IDの作成を選択します。

  4. ID の詳細で、作成するIDのタイプでドメインを選択します。ドメイン検証プロセスを完了するには、ドメインの DNS 設定にアクセスできなければなりません。

  5. ドメインまたはサブドメインの名前をドメインフィールドに入力します。

    ヒント

    ドメインが www.example.com の場合は、ドメインとして「example.com」と入力します。「www.」の部分を含めないでください。含めてしまうと、ドメイン検証プロセスが失敗します。

  6. (オプション)デフォルト設定セットを割り当てるを選択する場合、チェックボックスをオンにします。

    1. デフォルト設定セットで、ID に割り当てる既存の設定セットを選択します。設定セットを作成していない場合は、「Amazon SESの設定セットの使用」を参照してください。

      注記

      Amazon SESでは、送信時に他のセットが指定されていない場合にのみ、割り当てられた設定セットにデフォルト設定されます。設定セットが指定されている場合、Amazon SESはデフォルトセットの代わりに指定されたセットを適用します。

  7. (オプション)カスタムの MAIL FROM ドメインを使用する場合、チェックボックスをオンにして、次のステップを完了します。詳細については、「カスタムの MAIL FROM ドメインを使用する」を参照してください。

    1. [MAIL FROM ドメイン] に、MAIL FROMドメインとして使用するサブドメインを入力します。これは、検証するドメインIDのサブドメインでなければなりません。Eメールの送信元ドメインをMAIL FROMドメインに設定することはできません。

    2. MX障害時の動作には、送信時に必要なMXレコードが見つからない場合にAmazon SES が実行するアクションを指定します。以下のオプションのいずれかを選択します。

      • デフォルトのMAIL FROMドメインの使用 - MAIL FROMドメインのMXレコードが正しく設定されていない場合、Amazon SESはamazonses.comのサブドメインを使用します。サブドメインは、Amazon SESを使用するAWS リージョンによって異なります。

      • メッセージ拒否 - カスタム MAIL FROM ドメインの MX レコードが正しくセットアップされていない場合、Amazon SES はエラー MailFromDomainNotVerified を返します。このオプションを選択した場合、このドメインから送信しようとしたEメールは自動的に拒否されます。

    3. [Publish DNS records to Route53] (DNS レコードを Route53 に発行する) の [Enabled] (有効) のチェックを付けたままにしておくと、Amazon Route 53 経由でドメインがホストされている場合に、関連付けられた TXT レコードと MX レコードを、SES が作成時に発行してくれます。後でこれらのレコードを発行する場合は、[Enabled] (有効) のチェックボックスをオフにします。(後で ID を編集して、Route 53 にレコードを発行する場合は、Amazon SES で既存の ID を編集する をご覧ください。)

  8. (オプション) SES のデフォルト設定以外で、2048 ビットの鍵長で Easy DKIM を使用してカスタマイズされた DKIM ベースの検証を設定するには、[Verifying your domain] (ドメインを検証する) から [Advanced DKIM settings] (高度な DKIM 設定) を展開し、設定したい DKIM の種類を選択します。

    1. Easy DKIM:

      1. [Identity type] (ID タイプ) フィールドで、[Easy DKIM] を選択します。

      2. DKIM 署名キーの長さフィールドで、RSA_2048_BITまたはRSA_1024_BITを選択します。

      3. [Publish DNS records to Route53] (DNS レコードを Route53 に発行する) の [Enabled] (有効) のチェックを付けたままにしておくと、Amazon Route 53 経由でドメインがホストされている場合に、関連付けられた CNAME レコードを、SES が作成時に発行してくれます。後でこれらのレコードを発行する場合は、[Enabled] (有効) のチェックボックスをオフにします。(後で ID を編集して、Route 53 にレコードを発行する場合は、Amazon SES で既存の ID を編集する をご覧ください。)

    2. DKIM 認証トークンの提供 (BYODKIM):

      1. パブリックキーとプライベートキーのペアを既に生成し、DNS ホストプロバイダーにパブリックキーを追加していることを確認します。詳細については、「Amazon SES で独自の DKIM 認証トークン (BYODKIM) を提供する」を参照してください。

      2. [Identity type] (ID タイプ) フィールドで、[Provide DKIM authentication token (BYODKIM)] (DKIM 認証トークンの提供 (BYODKIM)) を選択します。

      3. [Private key] (プライベートキー) には、パブリックキーとプライベートのキーのペアから生成されたプライベートキーを貼り付けます。プライベートキーでは最低 1024 ビットの RSA 暗号化、最大 2048 ビットで、base64 (PEM) エンコーディングを使用してエンコードする必要があります。

        注記

        生成されたプライベートキーの最初と最後の行 (それぞれ -----BEGIN PRIVATE KEY----------END PRIVATE KEY-----) を削除する必要があります。さらに、生成されたプライベートキーの改行を削除する必要があります。結果の値は、スペースや改行を含まない文字列になります。

      4. [Selector name] (セレクタ名) に、ドメインの DNS 設定で指定されるセレクタの名前を入力します。

  9. DKIM 署名フィールドで[Enabled]ボックスがオンになっていることを確認してください。

  10. (オプション) 1 つ以上のタグをドメインIDに追加するには、タグキーとキーのオプションの値を指定します。

    1. 新しいタグを追加を選択し、キーを入力します。オプションで、タグにを追加できます。

    2. 追加のタグが 50 を超えないように繰り返すか、削除を選択し、タグを削除します。

  11. IDの作成を選択します。

DKIM でドメイン ID を作成および設定したので、DNS プロバイダーで検証プロセスを完了する必要があります。「DNS プロバイダーでの DKIM ドメイン ID の検証」に進み、ID を設定した DKIM の種類向けの Easy DKIM の DNS 認証手順に従います。

DNS プロバイダーでの DKIM ドメイン ID の検証

DKIM で設定したドメイン ID を作成したら、選択した DKIM のタイプに対応する認証手順に従って、DNS プロバイダーでの検証プロセスを完了する必要があります。

ドメイン ID をまだ作成していない場合は、「ドメイン ID の作成」を参照してください。

DNS プロバイダーで DKIM ドメイン ID を検証するには

  1. [Verified identities] (検証済み ID) テーブルで、検証するドメインを選択します。

  2. ID 詳細ページの [認証] タブで、[Publish DNS records] (DNS レコードの発行) を展開します。

  3. ドメインを構成した DKIM のフレーバー ([Easy DKIM] または [BYODKIM]) に応じて、それぞれの指示に従ってください。

    Easy DKIM

    Easy DKIM で設定されたドメインを検証するには

    1. [Publish DNS records] (DNS レコードの発行) テーブルで、このセクションに表示され、DNS プロバイダーに発行 (追加) する 3 つの CNAME レコードをコピーします。または、[レコードセットを CSV としてダウンロード] を選択してコンピューターにこのレコードのコピーを保存することもできます。

      DNS プロバイダーに発行する CNAME レコードの例を次の図に示します。

      
                                        ID の詳細ページの DKIM セクション。3 つの架空の CNAME レコードが表示されています。
    2. DNS ホストプロバイダーごとに CNAME レコードをドメインの DNS 設定に追加します。

      • すべての DNS ホストプロバイダー (Route 53 を除く) – ドメインの DNS あるいはウェブホスティングプロバイダーにログインし、以前にコピーまたは保存した値がある CNAME レコードを追加します。プロバイダーによって、DNS レコードを更新する手順は異なります。これらの手順の後に記載されている「DNS/ホスティングプロバイダーテーブル」を参照してください。

        注記

        いくつかの DNS プロバイダーでは、レコード名に下線 (_) を含めることが許可されていません。ただし、DKIM レコード名には下線が必要となります。DNS プロバイダーがレコード名に下線を含めることを許可しない場合、プロバイダーのカスタマーサポートにお問い合わせください。

      • DNS ホストプロバイダーとしての Route 53 – SES を使用して E メールを送信するときに使用するアカウントと同じアカウントで Route 53 を使用し、そのドメインが登録されている場合、SES がドメインの DNS 設定を自動的に更新します。ただし、作成時に、SES が設定を発行できるようにした場合に限ります。そうでない場合は、作成後にボタンをクリックするだけで簡単に Route 53 に発行できます。「Amazon SES で既存の ID を編集する」を参照してください。DNS 設定が自動的に更新されない場合は、「レコードの編集」の手順を実行してください。

      • DNS プロバイダーが不明な場合 – システム管理者に問い合わせてください。

    BYODKIM

    Easy DKIM で設定されたドメインを検証するには

    1. 要約すると、BYODKIM を使用してドメインを作成するか、BYODKIM を使用して既存のドメインを設定したときに、SES コンソールの [Advanced DKIM Settings] (DKIM の詳細設定) ページの各フィールドに、(自己生成されたパブリックキーとプライベートキーのペアから) プライベートキーとセレクタ名のプレフィックスを追加しました。ここで、DNS ホストプロバイダーの次のレコードを更新して、検証プロセスを完了する必要があります。

    2. [Publish DNS records] (DNS レコードの発行) テーブルから、[Name] (名前) 列に表示されるセレクタ名レコードをコピーして DNS プロバイダーに発行 (追加) します。または、[Download .csv record set] (.csv のレコードセットをダウンロード) を選択してコンピュータにこのレコードのコピーを保存することもできます。

      DNS プロバイダーに発行するセレクタ名レコードの例を次の図に示します。

      
                                        ID の詳細ページの DKIM セクション。3 つの架空の CNAME レコードが表示されています。
    3. ドメインの DNS あるいはウェブホスティングプロバイダーにログインし、以前にコピーまたは保存したセレクタ名レコードを追加します。プロバイダーによって、DNS レコードを更新する手順は異なります。これらの手順の後に記載されている「DNS/ホスティングプロバイダーテーブル」を参照してください。

      注記

      いくつかの DNS プロバイダーでは、レコード名に下線 (_) を含めることが許可されていません。ただし、DKIM レコード名には下線が必要となります。DNS プロバイダーがレコード名に下線を含めることを許可しない場合、プロバイダーのカスタマーサポートにお問い合わせください。

    4. 自己生成されたパブリックキーとプライベートキーのペアから、ドメインの DNS またはウェブホスティングプロバイダーに、パブリックキーが追加されている必要があります。まだ追加していなければ、追加してください。

      [Publish DNS records] (DNS レコードの発行) テーブルの [Value] (値) 列に表示されるパブリックキーレコードには、コンピュータに保存したか DNS プロバイダーに提供したパブリックキー値のプレースホルダーとして「p=customerProvidedPublicKey」のみが表示されることに注意してください。

      注記

      パブリックキーを DNS プロバイダーに公開 (追加) するときは、次のようにフォーマットする必要があります。

      • 生成されたパブリックキーの最初と最後の行 (それぞれ -----BEGIN PUBLIC KEY----------END PUBLIC KEY-----) を削除する必要があります。さらに、生成されたパブリックキーの改行を削除する必要があります。結果の値は、スペースや改行を含まない文字列になります。

      • [Publish DNS records] (DNS レコードの発行) テーブルの [Value] (値) 列に示すように、プレフィックス p= を含める必要があります。

  4. DNS 設定への変更が反映されるまでに最大 72 時間かかる場合があります。Amazon SES がドメインの DNS 設定の中から必要な DKIM レコードをすべて検出するとすぐに、検証プロセスは完了します。ドメインのDKIM の設定成功と表示され、ID の状態は、検証済みと表示されます

  5. [custom MAIL FROM domain] (カスタムの MAIL FROM ドメイン) を設定して検証する場合は、「MAIL FROM ドメインの設定」の手順に従います。

次の表には、いくつかの広く使用されている DNS プロバイダーに関するドキュメントへのリンクが含まれています。このリストは網羅的なものではなく、推奨を意味するものでもありません。同様に、DNS プロバイダーがリストされていない場合、Amazon SES でドメインを使用できないことを意味するものでもありません。

DNS/ホスティングプロバイダー ドキュメントのリンク

GoDaddy

CNAME レコードを追加する (外部リンク)

DreamHost

カスタム DNS レコードを追加する方法 (外部リンク)

Cloudflare

Managing DNS records in Cloudflare(外部リンク)

HostGator

HostGator/eNom で DNS レコードを管理する (外部リンク)

Namecheap

ドメインの TXT/SPF/DKIM/DMARC レコードを追加する方法(外部リンク)

Names.co.uk

ドメイン DNS 設定の変更(外部リンク)

Wix

Wix アカウントの CNAME レコードの追加または更新 (外部リンク)

ドメイン検証のトラブルシューティング

上記のステップを完了してから 72 時間経過してもドメインが検証されない場合は、以下を確認してください。

  • 正しいフィールドに DNS レコードの値を入力したことを確認してください。一部のDNSプロバイダーは、[名前/ホスト] フィールドをホストまたはホスト名と呼んでいます。また、一部のプロバイダーは [Record value] フィールドをポイント先 または結果と呼んでいます。

  • DNS レコードに入力した名前/ホスト値にプロバイダーがドメイン名を自動的に追加していないことを確認してください。プロバイダーによっては、ドメイン名が追加され、そのことが通知されない場合もあります。プロバイダーがドメイン名を名前/ホスト値に追加した場合は、この値の末尾からドメイン名を削除します。また、DNS レコードの値の末尾にピリオドを追加してみることもできます。このピリオドは、ドメイン名が完全に修飾されたことをプロバイダーに示します。

  • 各 DNS レコードの名前/ホスト値には、下線文字 (_) が必要です。プロバイダーが DNS レコード名の下線を許可しない場合、プロバイダーのカスタマーサポート部門にお問い合わせください。

  • ドメインの DNS 設定に追加する必要がある検証レコードは、AWS リージョンごとに異なります。ドメインを使用して複数のAWS リージョンから E メールを送信する場合、それぞれのリージョンごとにドメインを作成し検証する必要があります。

Eメールアドレス ID の作成

Amazon SES コンソールを使用して E メールアドレス ID を作成するには、以下の手順を完了します。

E メールアドレスの ID を作成するには (コンソール)

  1. AWS Management Console にサインインして Amazon SES コンソール (https://console.aws.amazon.com/ses/) を開きます。

  2. ナビゲーションペインの設定で、検証済みIDを選択します。

  3. IDの作成を選択します。

  4. ID の詳細 で、作成するIDタイプとしてE メールアドレスを選択します。

  5. [E メールアドレス] に、使用する E メールアドレスを入力します。E メールアドレスは、アクセスでき、メールを受信できるアドレスでなければなりません。

  6. (オプション)デフォルト設定セットを割り当てるを選択する場合、チェックボックスをオンにします。

    1. デフォルト設定セットで、ID に割り当てる既存の設定セットを選択します。設定セットを作成していない場合は、「Amazon SESの設定セットの使用」を参照してください。

      注記

      Amazon SESでは、送信時に他のセットが指定されていない場合にのみ、割り当てられた設定セットにデフォルト設定されます。設定セットが指定されている場合、Amazon SESはデフォルトセットの代わりに指定されたセットを適用します。

  7. (オプション) 1 つ以上のタグをドメインIDに追加するには、タグキーとキーのオプションの値を指定します。

    1. 新しいタグを追加を選択し、キーを入力します。オプションで、タグにを追加できます。

    2. 追加のタグが 50 を超えないように繰り返すか、削除を選択し、タグを削除します。

  8. メールアドレス ID を作成するには、[Create identity] (ID を作成) を選択します。作成後、確認メールが 5 分以内に届きます。次のステップは、次のセクションの確認手順に従って、Eメールアドレスを確認することです。

    注記

    検証しようとしている E メールアドレスに送信されるメッセージをカスタマイズすることができます。詳細については、「カスタム検証 E メールテンプレートの使用」を参照してください。

これで E メールアドレス ID を作成したので、検証プロセスを完了する必要があります。「E メールアドレス ID の検証」に進みます。

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

E メールアドレス ID を作成したら、検証プロセスを完了する必要があります。

E メールアドレス ID をまだ作成していない場合は、「Eメールアドレス ID の作成」を参照してください。

E メールアドレス ID を検証するには

  1. IDの作成に使用したEメールアドレスの受信トレイを確認し、no-reply-aws@amazon.com から E メールを探します。

  2. E メールを開き、E メールのリンクをクリックして、E メールアドレスの検証プロセスを完了します。完了したら、ID の状態検証済みに更新されます。

E メールアドレス検証のトラブルシューティング

ID の作成から 5 分以内に確認メールが届かなかった場合は、次のトラブルシューティング手順を試してください。

  • アドレスを正しく入力されていることを確認します。

  • 確認しようとしている E メールアドレスが E メールを受信できることを確認してください。これは、確認するアドレスに別の E メールアドレスからテストメールを送信することでテストできます。

  • 迷惑 E メールフォルダを確認します。

  • 検証 E メールのリンクは 24 時間後に期限切れになります。新しい確認メールを送信するには、ID の詳細ページの上部にある再送信を選択します。

ID を作成して検証し、同時にデフォルトの設定セットを割り当てる

Amazon SES API v2で、CreateEmailIdentity オペレーションを使用して、新しい E メール ID を作成し、同時にデフォルト設定を設定します。

注記

このセクションの手順を完了する前に、まず AWS CLI をインストールして設定する必要があります。詳細については、AWS Command Line Interface ユーザーガイドを参照してください。

AWS CLI を使用してデフォルト設定セットを設定するには

  • コマンドラインで以下のコマンドを入力して、CreateEmailIdentity オペレーションを使用します。

aws sesv2 create-email-identity --email-identity ADDRESS-OR-DOMAIN --configuration-set-name CONFIG-SET

上記のコマンドで、ADDRESS-OR-DOMAIN を、検証する E メール ID に置き換えます。CONFIG-SET を、ID のデフォルト設定セットとして設定する設定セット名に置き換えます。

コマンドが正常に実行された場合、何の出力もなく終了します。

E メールアドレスを検証するには

  1. 受信箱で、検証するメールアドレスをチェックします。「Amazon Web Services - Email Address Verification Request in region RegionName」という件名のメッセージが表示されます。ここで、RegionName は、E メールアドレスを検証しようとした AWS リージョン の名前です。

    メッセージを開き、メッセージ内のリンクをクリックします。

    注記

    検証メッセージ内のリンクは、メッセージが送信されてから 24 時間で期限切れになります。確認メールを受信してから 24 時間が経過した場合は、手順 1 〜 5 を繰り返して、有効なリンクが設定された確認メールを受信してください。

  2. Amazon SES コンソールの [Identity Management] で [Email Addresses] を選択します。E メールアドレスのリストで、検証する E メールアドレスを探します。E メールアドレスが検証された場合は、[Status] 列の値が 「verified」になります。

ドメインを検証するには

ドメインの検証の詳細については、「ドメイン ID の作成」を参照してください。

カスタム検証 E メールテンプレートの使用

E メールアドレスを確認しようとすると、Amazon SES はそのアドレスに次の図に示す例のような E メールを送信します。

Amazon SES のお客様の中には、Amazon SES を通じて E メールを送信するアプリケーション (E メールマーケティングスイートや発券システムなど) を構築しています。これらのアプリケーションのエンドユーザーにとって、E メールの検証プロセスはわかりにくい場合があります。確認 E メールはアプリケーションのブランド化ではなく、Amazon SES ブランドを使用しています。エンドユーザーが直接 Amazon SES を使用するためにサインアップすることはありません。

Amazon SES のユースケースでは、Amazon SES で使用するために E メールアドレスを検証する必要がある場合、カスタマイズされた確認 E メールを作成できます。これらのカスタマイズされた E メールは、顧客の混乱を減らし、顧客が登録手続きを完了する率を上げるのに役立ちます。

注記

この機能を使用するには、Amazon SES アカウントがサンドボックス外にあることが必要です。詳細については、「Amazon SES サンドボックス外への移動」を参照してください。

カスタム検証 E メールテンプレートの作成

カスタム確認 E メールを作成するには、CreateCustomVerificationEmailTemplate API オペレーションを使用します。このオペレーションでは、次の入力を使用します。

属性 説明
TemplateName テンプレートの名前。指定する名前は一意である必要があります。
FromEmailAddress 確認 E メールが送信された E メールアドレス。指定したアドレスまたはドメインは、Amazon SES アカウントで使用するために検証する必要があります。
注記

FromEmailAddress 属性は表示名 (「差出人」名とも呼ばれます) をサポートしていません。

TemplateSubject 確認 E メールの件名。
TemplateContent E メールの本文。E メール本文には、一定の制限がある HTML を含めることができます。詳細については、「カスタム検証 E メールに関するよくある質問」を参照してください。
SuccessRedirectionURL ユーザーの E メールアドレスが正常に確認された場合に送信されるURL。
FailureRedirectionURL ユーザーの E メールアドレスが正常に確認されなかった場合に送信されるURL。

AWS SDK または AWS CLI を使用して、CreateCustomVerificationEmailTemplate オペレーションでカスタム検証 E メールテンプレートを作成できます。AWSSDK についてのついては、「Amazon Web Services のツール」を参照してください。AWS CLI の詳細については、「AWS コマンドラインインターフェイス」を参照してください。

次のセクションでは、AWS CLI を使用してカスタム確認 E メールを作成する手順について説明します。これらの手順は、AWS CLI がインストールされ、設定されていることを前提としています。AWS CLI のインストールおよび設定の詳細については、「AWS Command Line Interface ユーザーガイド」を参照してください。

注記

このセクションの手順を完了するには、AWS CLI のバージョン 1.14.6 以降を使用する必要があります。最良の結果を得るには、AWS CLI の最新バージョンにアップグレードします。AWS CLIの更新の詳細については、ユーザーガイドの「AWS Command Line Interfaceのインストール」AWS Command Line Interfaceを参照してください。

  1. テキストエディタで新規ファイルを作成します。エディタに、以下の内容を貼り付けます。

    { "TemplateName": "SampleTemplate", "FromEmailAddress": "sender@example.com", "TemplateSubject": "Please confirm your email address", "TemplateContent": "<html> <head></head> <body style='font-family:sans-serif;'> <h1 style='text-align:center'>Ready to start sending email with ProductName?</h1> <p>We here at Example Corp are happy to have you on board! There's just one last step to complete before you can start sending email. Just click the following link to verify your email address. Once we confirm that you're really you, we'll give you some additional information to help you get started with ProductName.</p> </body> </html>", "SuccessRedirectionURL": "https://www.example.com/verifysuccess", "FailureRedirectionURL": "https://www.example.com/verifyfailure" }
    重要

    上記の例を読みやすくするために、TemplateContent 属性に改行が含まれています。前述の例をテキストファイルに貼り付ける場合は、続行する前に改行を削除してください。

    TemplateNameFromEmailAddressTemplateSubjectTemplateContentSuccessRedirectionURL、および FailureRedirectionURL の値を独自の値に置き換えます。

    注記

    FromEmailAddress パラメータで指定する E メールアドレス は、検証される必要があるか、検証済みドメインのアドレスである必要があります。詳細については、「Amazon SES の検証済みID」を参照してください。

    終了したら、customverificationemail.json としてファイルを保存します。

  2. コマンドラインで次のコマンドを入力して、カスタム検証 E メールテンプレートを作成します。

    aws sesv2 create-custom-verification-email-template --cli-input-json file://customverificationemail.json
  3. (オプション)次のコマンドを入力して、テンプレートが作成されたことを確認できます。

    aws sesv2 list-custom-verification-email-templates

カスタム検証 E メールテンプレートの編集

UpdateCustomVerificationEmailTemplateオペレーションを使用してカスタム確認 E メールテンプレートを編集できます。このオペレーションでは、CreateCustomVerificationEmailTemplate オペレーション (つまり TemplateNameFromEmailAddressTemplateSubjectTemplateContentSuccessRedirectionURL、および FailureRedirectionURL 属性) と同じ入力を受け入れます。ただし、UpdateCustomVerificationEmailTemplate オペレーションでは、これらの属性は必要ではありません。既存のカスタム確認 E メールテンプレートの名前と同じ TemplateName 値を渡すと、指定した属性がテンプレートに元々含まれていた属性を上書きします。

カスタムテンプレートを使用した検証 E メールの送信

少なくとも 1 つのカスタム確認 E メールテンプレートを作成したら、SendCustomVerificationEmail API オペレーションを呼び出して顧客に送信することができます。AWS SDK または AWS CLI のいずれかを使用して、SendCustomVerificationEmail オペレーションを呼び出すことができます。SendCustomVerificationEmail オペレーションでは、次の入力を使用します。

属性 説明
EmailAddress 確認されている E メールアドレス。
TemplateName 確認されている E メールアドレスに送信されるカスタム確認 E メールテンプレートの名前。
ConfigurationSetName (オプション) 確認 E メールを送信するときに使用する設定セットの名前。

たとえば、顧客がアプリケーションのフォームを使用してサービスに登録するとします。顧客がフォームを完成させて送信すると、アプリケーションは SendCustomVerificationEmail オペレーションを呼び出し、顧客の E メールアドレスと使用するテンプレートの名前を渡します。

顧客は、作成したカスタマイズされた E メールテンプレートを使用する E メールを受信します。Amazon SESは、受信者へのユニークなリンクと簡単な免責事項を自動的に追加します。次の図は、カスタム検証 E メールテンプレートの作成で作成されたテンプレートを使用する確認 E メールのサンプルを示しています。

カスタム検証 E メールに関するよくある質問

このセクションでは、カスタム確認 E メールテンプレート機能に関するよくある質問に対する回答を示します。

Q1. 作成できるカスタム確認 E メールテンプレートの数はいくつですか?

Amazon SES アカウントごとに最大 50 のカスタム確認 E メールテンプレートを作成できます。

Q2. カスタム確認 E メールはどのように受信者に表示されますか?

カスタム確認 E メールには、テンプレートを作成したときに指定したコンテンツと、メールアドレスを確認するために受信者がクリックする必要があるリンクが含まれます。

Q3. カスタム確認 E メールをプレビューすることはできますか?

カスタム確認 E メールをプレビューするには、SendCustomVerificationEmail オペレーションを使用して確認 E メールを所有しているアドレスに送信します。確認リンクをクリックしない場合は、Amazon SESは新しい ID を作成しません。確認リンクをクリックすると、DeleteIdentity オペレーションを使用して、オプションとして新しく作成された ID を削除することもできます。

Q4. カスタム確認 E メールテンプレートに画像を含めることはできますか?

Base64 エンコーディングを使用して、テンプレートのHTMLに画像を埋め込むことができます。この方法で画像を埋め込むと、Amazon SES は画像を添付ファイルに自動的に変換します。次のコマンドのいずれかを発行して、画像をコマンドラインでエンコードすることができます。

Linux, macOS, or Unix
base64 -i imagefile.png | tr -d '\n' > output.txt
Windows
certutil -encodehex -f imagefile.png output.txt 0x40000001

imagefile.png を、エンコードするファイルの名前に置き換えます。上記の両方のコマンドで、Base64 でエンコードされた画像はoutput.txtに保存されます。

テンプレートの HTML に以下を含めることで、Base64 でエンコードされた画像を埋め込むことができます。<img src="data:image/png;base64,base64EncodedImage"/>

前述の例では、png をエンコードされた画像のファイルタイプ (jpg や gif など) に置き換え、base64EncodedImageをBase64 でエンコードされた画像 (つまり、前述のコマンドの output.txt 内容) に置き換えます。

Q5. カスタム検証 E メールテンプレートに含めることのできるコンテンツに制限はありますか?

カスタム確認 E メールテンプレートのサイズは 10 MB を超えることはできません。また、HTML を含むカスタム検証 E メールテンプレートでは、以下の表に示しているタグと属性しか使用できません。

HTML タグ 許可された属性
abbr class, id, style, title
acronym class, id, style, title
address class, id, style, title
area class, id, style, title
b class, id, style, title
bdo class, id, style, title
big class, id, style, title
blockquote cite, class, id, style, title
body class, id, style, title
br class, id, style, title
button class, id, style, title
caption class, id, style, title
center class, id, style, title
cite class, id, style, title
code class, id, style, title
col class, id, span, style, title, width
colgroup class, id, span, style, title, width
dd class, id, style, title
del class, id, style, title
dfn class, id, style, title
dir class, id, style, title
div class, id, style, title
dl class, id, style, title
dt class, id, style, title
em class, id, style, title
fieldset class, id, style, title
font class, id, style, title
form class, id, style, title
h1 class, id, style, title
h2 class, id, style, title
h3 class, id, style, title
h4 class, id, style, title
h5 class, id, style, title
h6 class, id, style, title
head class, id, style, title
hr class, id, style, title
html class, id, style, title
i class, id, style, title
img align, alt, class, height, id, src, style, title, width
input class, id, style, title
ins class, id, style, title
kbd class, id, style, title
label class, id, style, title
legend class, id, style, title
li class, id, style, title
map class, id, style, title
menu class, id, style, title
ol class, id, start, style, title, type
optgroup class, id, style, title
option class, id, style, title
p class, id, style, title
pre class, id, style, title
q cite, class, id, style, title
s class, id, style, title
samp class, id, style, title
select class, id, style, title
small class, id, style, title
span class, id, style, title
strike class, id, style, title
strong class, id, style, title
sub class, id, style, title
sup class, id, style, title
table class, id, style, summary, title, width
tbody class, id, style, title
td abbr, axis, class, colspan, id, rowspan, style, title, width
textarea class, id, style, title
tfoot class, id, style, title
th abbr, axis, class, colspan, id, rowspan, scope, style, title, width
thead class, id, style, title
tr class, id, style, title
tt class, id, style, title
u class, id, style, title
ul class, id, style, title, type
var class, id, style, title
注記

カスタム検証 E メールテンプレートには、コメントタグを含めることはできません。

Q6. 確認済み E メールアドレスをアカウントにいくつ持つことができますか?

Amazon SES アカウントには、AWSリージョンごとに 10,000 個までの確認済み ID を含めることができます。Amazon SES で、ID には検証済みドメインと E メールアドレスの両方が含まれます。

Q7. Amazon SES コンソールを使用してカスタム確認 E メールテンプレートを作成できますか?

現在、Amazon SES API を使用してのみカスタム確認 E メールを作成、編集、削除できます。

Q8. 顧客がカスタム確認 E メールを受け取ったときに発生するオープンイベントとクリックイベントを追跡できますか?

カスタム検証E メールには、オープンまたはクリックの追跡を含めることはできません。

Q9. カスタム検証E メールにカスタムヘッダーを含めることはできますか?

カスタム検証E メールにカスタムヘッダーを含めることはできません。

Q10. カスタム検証E メールの下部に表示されるテキストを削除できますか?

次のテキストは、すべてのカスタム検証E メールの末尾に自動的に追加され、削除することはできません。

この E メールアドレスの確認をリクエストしていない場合は、このメッセージを無視してください。不明な点がございましたら、ご質問やご意見とともに、このメールを次の E メールアドレスに転送してください。

このテキストの E メールアドレスのリンクは aws-email-domain-verification@amazon.com を指します。これは、Amazon SES チームが積極的にモニタリングしている受信トレイです。

Q11. カスタム確認 E メールは DKIM 署名されていますか?

確認 E メールを DKIM 署名するには、確認メールテンプレートを作成するときに FromEmailAddress 属性で指定した E メールアドレスが DKIM 署名を生成するように設定する必要があります。E メールアドレスの DKIM の設定の詳細については、Amazon SES における DKIM を使った E メールの認証 を参照してください。

Q12. カスタム検証 E メールテンプレートの API オペレーションが SDK または CLI にないのはなぜですか?

SDK または AWS CLI でカスタム検証 E メールテンプレートのオペレーションを使用できない場合は、古いバージョンの SDK または CLI を使用している可能性があります。カスタム検証 E メールテンプレートのオペレーションは以下の SDK および CLI で使用できます。

  • AWS Command Line Interface のバージョン 1.14.6 以降

  • AWS SDK for .NET のバージョン 3.3.205.0 以降

  • AWS SDK for C++ のバージョン 1.3.20170531.19 以降

  • AWS SDK for Go のバージョン 1.12.43 以降

  • AWS SDK for Java のバージョン 1.11.245 以降

  • AWS SDK for JavaScript のバージョン 2.166.0 以降

  • AWS SDK for PHP のバージョン 3.45.2 以降

  • AWS SDK for Python (Boto) のバージョン 1.5.1 以降

  • aws-sdk-ses の AWS SDK for Ruby Gem のバージョン 1.5.0 以降

Q13. カスタム確認 E メールを送信するときに ProductionAccessNotGranted エラーが発生するのはなぜですか?

ProductionAccessNotGranted エラーは、アカウントが Amazon SES サンドボックスにまだ存在することを示しています。カスタム確認 E メールは、アカウントがサンドボックスから削除されている場合にのみ送信できます。詳細については、「Amazon SES サンドボックス外への移動」を参照してください。