はじめに
- 前回からのメールサーバーの構築中の続き
送信元の確認
- 送信元メールアドレス の検証を行う。「Verify a New Email Address」ボタンをクリックする。
- 指定する送信元メールアドレスは受信可能なメールアドレスを指定する必要がある。「Verify This Email Address」ボタンをクリックする
- 「close」ボタンをクリックする
- 登録した送信メールアドレスに検証要求メールが送信される。承認するためリンクをクリックすると、認証すると、「検証に成功しました」というメッセージがブラウザに表示されます。
AmazonSESでEメールを受信する設定
- 確認済みのドメインに代わってAmazonSESを使用してメッセージを受信する場合、Amazon SESを設定して、メッセージをAmazon S3バケットに配信したり、AWS Lambda関数を介してカスタムコードを呼び出したり、AmazonSNSに通知を公開したりできます。- - 受信したくないメッセージをドロップまたはバウンスするようにAmazonSESを設定することもできます。
- 受信ルールを定義することにより、メールに何が起こるかを制御します。
アカウントの作成を行う。[アカウント名]@[ドメイン名]を入力して「Add Recipient」ボタンをクリックする
追加したアカウントのステータスが「Verifed」になっていることを確認したら画面右下にある「Next Step」ボタンをクリックする
Actionsで「Lamda」を選択する
Lamdaの関数を作成する必要があることに気づきいったんLamdaで下記のロジックで送信できるか検証する。
import boto3 import json SOURCE_MAIL = "<Fromのアドレスを指定する>" TO_MAIL = "<Toのアドレスを指定する>" REGION = "us-east-1" def send_email(source, to, subject, body): client = boto3.client('ses', aws_access_key_id = "アクセスキー", aws_secret_access_key = "シークレットアクセスキー", region_name = "us-east-1" ) response = client.send_email( Source = SOURCE_MAIL, Destination = { 'ToAddresses': [ TO_MAIL, ] }, Message = { 'Subject': { 'Data': 'テストメール', 'Charset': 'UTF-8' }, 'Body': { 'Text': { 'Data': 'テスト本文', 'Charset': 'UTF-8' } } } ) return response def lambda_handler(event, context): email = "error occured" message = json.dumps(event, indent = 4) r = send_email(SRC_MAIL, DST_MAIL, email, message) return r
検証結果
- Lamdaからメールが送信できたが、なりすましメールと判定されてメールが受信された。今日はここまでにして明日調べる