Classmethod Yutaka Memo Ses SMTP Iam Conversion
IAM ユーザーのアクセスキーから Amazon SES SMTP 認証情報を生成してメール送信する
- URL: https://dev.classmethod.jp/articles/yutaka-memo-ses-smtp-iam-conversion/
- 日付: 2026-06-15
- Tier:
Tier 3 - 要旨: 既存の IAM ユーザーのシークレットアクセスキーから SES 用の SMTP パスワードを生成する方法を検証した記事。HMAC-SHA256 で署名したバイト列を Base64 エンコードして変換する。一時的な認証情報(STS 等)では動作しない点に注意が必要。
詳細
classmethod オペレーションズによる手順検証記事。
IAM ユーザーに ses:SendRawEmail を許可するポリシーをアタッチし、公式ドキュメントの Python スクリプトでシークレットアクセスキーを SES SMTP パスワードに変換する。変換は AWS4 署名プロセスを応用した固定アルゴリズムで、バージョンバイト(0x04)を先頭に付加してからエンコードする。
SMTP ユーザー名はアクセスキー ID、パスワードは変換後の値を使う。AWS のシークレットアクセスキーをそのまま SMTP パスワードとして使うと 535 Authentication Credentials Invalid で失敗することも実験で確認。AWS ドキュメントでは認証情報の管理を簡単にするため専用の IAM ユーザーを作ることを推奨している。