[
スレッド全体
]
[57723]
Re:Gmail(OAuth2)利用時の送信認証エラーについて
返信
削除
▽
2026/10/21 (水) 14:07:14
▽
KOBAYASHI Jun
196.126.100.220.dy.bbexcite.jp / Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/155.0.0.0 Safari/537.36
GoogleのGmailヘルプコミュニティにもご質問を頂きましたので、こちらに調査した内容を報告します。
結論から、Google側のGmailAPIやoAuth2における問題は報告がなく実装にも問題は無いと思われます。
調査した内容と、Becky!側での実装を確認いただきたいので、以下の情報をお伝えします。
■ 検証した方法
・Windows上のWSL/LinuxでPythonスクリプトを使用し、GmailのSMTPサーバー(smtp.gmail.com:587)へSTARTTLSで接続して、XOAUTH2認証を行いました。
・メール送信は行わず、認証のみを検証しています。各試行では新しいSMTP接続を使用しました。
・Googleから取得したアクセストークンの有効期間は3599秒でした。トークンの識別用ハッシュを比較し、同じトークンを使い続けた場合と、更新した場合の応答を確認しました。
■ 試験1:更新せずに期限前後で認証
同じアクセストークンを保持し、更新せずに認証を繰り返しました。
・取得直後:235 Acceptedで成功。
・推定期限の約120秒前:同じトークンで成功。
・推定期限の約30秒後・120秒後・300秒後:いずれも535 BadCredentialsで失敗。
・その後、リフレッシュトークンで新しいアクセストークンを取得:235 Acceptedで成功。
失敗時も接続・STARTTLSは成功していました。期限後のトークンは、接続し直すだけでは復旧せず、更新後に認証できました。
■ 試験2:期限前に更新する比較
旧トークンを保持しながら、期限前に別のアクセストークンを取得しました。
・旧トークンは、当初成功していましたが、その後535で失敗するようになりました。
・旧トークンが失敗した直後でも、事前に更新したトークンでは235で成功しました。
・さらに新しく取得したトークンでも235で成功しました。
■ まとめ
・Gmail側で、同じアクセストークンの認証が時間経過に伴って成功から失敗へ変わり、更新したトークンでは成功する挙動を確認しました。
■ Becky!の実装で確認いただきたい点
・最初の認証失敗時に使用したトークンは、有効期限内だったか。
・トークン更新は、認証前・認証失敗後・手動再送時のどこで実行されるか。
・更新完了を待ってからSMTP認証を開始しているか。
・更新したトークンが、進行中のSMTP送信処理にも反映されているか。
・利用者ログの535直後にある二度目のAUTH XOAUTH2が、どのような処理・応答になっているか。
上記観点で確認頂ければ、こちらの問題は恐らく確認と修正が出来るように思います。
なお、別のメールクライアントである Thunderbird では同様の問題は生じません。
[
▼次のスレッド
]
INCM/CMT
Cyclamen v3.84