o365* では Basic Auth は実質的に廃止され、私のところでも今週からすべてのユーザーアカウントで無効化されたことが判明しました。メール送信のために他の認証方法をサポートする計画はありますか?
AWS/SES/Sendgrid などで設定可能であることは承知していますが、他のプロジェクトでの経験上、これは非常に厄介で、メッセージがスパムとして分類されることがよくあります。これは、基本的にすべて内部トラフィックであるため、残念なことです。
以前または現在 o365 SMTP アカウントを使用している、主に MS ベースの組織で、これを行うための推奨される方法はありますか?
「いいね!」 1
Action Mailer は XOAUTH2 をサポートしていませんが、Microsoft はそれを要求しています。
考えられる唯一の方法は、内部 SMTP サーバーを実行し、それらのメールを O365 に転送して最終的な配信を行うことでしょう。
編集: SMTP AUTH に関するセクションを読み間違えました。
gerhard
(Gerhard Schlager)
3
OAuth2に切り替える必要はないようです。
SMTP認証は、2022年10月1日にベーシック認証が完全に無効になった後も引き続き利用可能です。
そのため、app.ymlに環境変数を追加することでSMTP認証に変更できるはずです。
DISCOURSE_SMTP_AUTHENTICATION: cram_md5
それに加えて、DISCOURSE_SMTP_PASSWORD設定の値としてSMTPパスワードのMD5ハッシュを使用する必要があると思います。これらの変更を行った後、Dockerコンテナを再構築して試してみてください。
「いいね!」 4
理論上は利用可能ですが、「使用していない」テナントに対しては無効になっています。これは実際には、IT部門がそれを許可する新しいポリシーを手動で指定する必要があることを意味します。これは私たちにとっては実現不可能だと思われますが、いくつかリクエストを行います。参考までに、これが現在smtpサーバーからのデフォルトの応答です。
EHLO
250-XXX.outlook.office365.com Hello [178.XXX.XXX.XXX]
250-SIZE 157286400
250-PIPELINING
250-DSN
250-ENHANCEDSTATUSCODES
250-STARTTLS
250-8BITMIME
250-BINARYMIME
250-CHUNKING
250 SMTPUTF8
「いいね!」 1
参考までに…これは、私の機関で実装されている 0365 の MS 推奨テナント設定と思われるものとはまったく機能しません。
Discourse がメール送信で OATH をサポートしていない/できないことは、私たちにとって本当に苦痛です。AWS を介した送信を設定しましたが、多くのメール配信の問題が発生しており、既存のメールプロバイダーを使用することで物事をシンプルに保つことができればと本当に願っています。受信トレイへのアクセスについても同様です。
SMTP サーバーを実行して転送すると、ほとんどの人にとって多くのメール配信の問題が発生し、さらに多くの追加設定が必要になります。
この gem は必要なものを提供しているようで、かなりよくサポートされています(MIT ライセンス)。