2018年5月11時点で、Gmailの SMTP サーバーは Gmailアカウントによる認証を通っても、差出人は認証したGmailアドレスになってしまう。。ように戻ってますねぇ
2014年8月に、
【仕様変更】GmailのSMTPサーバー利用は、Gmailメールアドレスのみに限定!? と書きました。しかし、ここ最近の検証結果と確認結果として、現在は下記の仕様だということがわかりました。
- Gmailの SMTP サーバー( smtp.gmail.com ) を利用するには、 GmailアカウントによるSMTP認証をパスすれば差出人に問わず利用できる
差出人がGmailじゃなくても大丈夫
というわけなのです。
要するに、GmailアカウントでSMTP認証を通ればいいんですよね。
Googleグループも差出人にできるよ!
2020年5月11日時点で、できなくなっています(
有効なメールアドレスでないと出ますね)
確認コード受取のため、一瞬一般公開しないとだめですけどね。
ただし、Return-Path はSMTP認証に使ったGmailアドレス(つまりエンベロープ-Fromも同様)が表示されます。あくまで、メール内の From(差出人)のみ変更できるよってことです。
2段階認証を有効にしていた場合には、アプリ固有のパスワードを使おう
Gmailの差出人変更における、GmailのSMTPサーバーのSMTP認証は、2段階認証を有効にしている場合には
アプリ固有のパスワードが必要です。2段階認証を有効にしていない場合には、未検証ですが通常のパスワードで弾かれたなら、
安全性の低いアプリからのアクセスを許可しないといけないかなと思います。
検証結果
Gmail(A)にYahoo! Japanのフリーメールアドレスを差出人として、Gmail(B)アカウントを利用してSMTP認証をしてみました。
From: ◯◯@yahoo.co.jp
SMTP Setting
SMTP Server: smtp.gmail.com
Port: 465 using SSL
Username: ◯◯@gmail.com
Pass: App password for 2-step authorization (△△@gmail.com)
※Portは 587 using TLS でも問題ありません。
※Google Appsアカウントでも出来ました。
プログラムから実行するには
を参考にしてみてください!
2016年5月3日 @kimipooh