見出し画像

Amazon SESのメール受信を試す

メール受信をトリガーにやってみたいことがあったのでその前段。結構戸惑ったので基礎的な部分で時間をかなり使ってしまった。

ドメイン設定

まずはドメインの認証を実施します。SESv2の画面は英語しか提供されていないのは地味に不便。

DKIMの設定

SESでのメール受信方法のドキュメント

S3バケットを追加しておいて受信ルールを作る
なんだかスキャニング機能もついていそうに見える

Configuration: Email receiving

受信時のアクションでS3に保存するようにする。ドキュメント通りのバケットポリシーだと作れないのでここからバケットを作るようにした。なぜできないのかは不明。作ろうとしてエラーになる

Deliver to Amazon S3 bucket
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "AllowSESPuts",
            "Effect": "Allow",
            "Principal": {
                "Service": "ses.amazonaws.com"
            },
            "Action": "s3:PutObject",
            "Resource": "arn:aws:s3:::BUCKET/*",
            "Condition": {
                "StringEquals": {
                    "AWS:SourceAccount": "ACCOUNTID"
                },
                "StringLike": {
                    "AWS:SourceArn": "arn:aws:ses:*"
                }
            }
        }
    ]
}

ルールをアクティブにして完了(?)作成されたS3バケットのルールは上記

 ただ受信ができない。なんでか.
MXレコードが作れていなかった。MXあると思ったらどうやら別のやつだった。たぶんドメイン検証とかそういうの

10 inbound-smtp.regionInboundUrl.amazonaws.com

無事できた。
S3にも保存されている。

MXレコード設定ミスはエラーのリターンメールが帰らないので注意。単純にないだけなら返却されることもあるけれど。

暗号化はうまく行かない。デフォルトの指定ならできそうな書き方がされていたのに設定がいるのか。



よろしければサポートお願いします。プロデュース代になります