smtp ユーザ用キーを使用して api 経由のメール送信ができないことを知らず大ハマリしました。
SES を利用してメール送信する方法は2種類あります。
SES のコンソールで生成した smtp 用 IAM ユーザのアクセスキー、シークレットアクセスキーは、
smtp 経由でのメール送信専用で、api 経由でのメール送信には使用できません。
smtp 認証に使うシークレットアクセスキー(smtpパスワード)は、
シークレットアクセスキーにHMAC-SHAによる署名が施されている必要がありますが、
SES のコンソールで生成したアクセスキー、シークレットアクセスキーはその部分がAmazonによって自動化されています。
api 経由でメール送信したい場合、このキーは使用できません。
api 経由でのメール送信には IAM コンソールで新規で払い出した通常のユーザのアクセスキー、シークレットアクセスキーを使う必要があります。
smtp経由で使うキー | api経由で使うキー |
---|---|
SESコンソールで生成 | IAMコンソールで生成 |
smtp 認証専用 | 普通のIAMユーザ |
HMAC-SHA による署名が施されている | HMAC-SHAによる署名が施されていない |
ドキュメントちゃんと嫁ってお話ですね。。。