AEM as a Cloud Service SMTP メールが機能しないか、設定できません
AEM as a Cloud ServiceにはSMTP サーバーが含まれておらず、内部またはAMS SMTP ホストに接続できないため、お客様が組み込みサーバーを期待したり、企業またはレガシーリレーを使用しようとすると、メールが失敗します。 すべてのアウトバウンドメールは、お客様が提供する公開の認証されたSMTP プロバイダーを経由する必要があります。また、サンドボックス環境はアドバンストネットワークをサポートしていないため、SMTPはそこで機能しません。 外部SMTP プロバイダーの選択、高度なネットワーク ポート転送の設定、メールサービス OSGi設定の追加により、ステージング環境と実稼動環境からのメール配信が可能になります。
説明 description
環境:
- Adobe Experience Manager as a Cloud Service (AEMaaCS)
- AEM Assets 初期設定
- Cloud Manager(アドバンスドネットワーク)
- ステージング環境と実稼動環境(サンドボックスとRDEは高度なネットワーク機能をサポートしていません)
問題/症状:
- メールはlocalhostで動作しますが、AEM Cloudでは失敗し、コードがオーサーまたはパブリッシュにデプロイされると500個のエラーが発生します。
- お客様はAdobeがSMTP サーバーを提供することを期待しているため、SMTP設定を完了できません。
- サンドボックス環境では高度なネットワーク機能がサポートされていないため、メールを送信できません。
- AEMaaCSにはパブリック認証済みSMTP エンドポイントが必要なため、内部専用SMTP サーバーを使用しようとすると失敗します。
根本原因:
AEM as a Cloud ServiceはSMTP サーバーを提供しておらず、内部SMTP ホストに接続できません。 すべてのアウトバウンドメールでは、アドバンストネットワークを介してルーティングされた、顧客が提供するパブリック外部SMTP プロバイダーを使用する必要があります。 サンドボックス環境では高度なネットワークがサポートされていないため、SMTPは使用できません。 AMSが提供する非SLA SMTP サーバーを使用しようとすると、AEMaaCS Kubernetes環境からアクセスできないため、失敗します。
確認方法
- 環境がSMTPをサポートしているかどうかを確認します。 環境がサンドボックス、RDE、ステージ、実稼動環境のいずれであるかを識別します。 SMTPはサンドボックスやRDEではサポートされていないため、テストはステージレベルまたは実稼動レベルの環境で行う必要があります。
- 目的のSMTP エンドポイントが外部およびパブリックであることを確認します。 AEMaaCSは内部ホストまたはAMS SMTP ホストにアクセスできないため、構成に関係なく内部専用サーバーは機能しません。
解決策 resolution
問題を解決するには、次の手順に従います。
-
外部SMTP プロバイダーを選択して準備します。 パブリックで認証されたSMTP プロバイダーを選択し、そのホスト、ポート、ユーザー名、パスワードを取得します。 これらの資格情報は、電子メールプロバイダーから取得されます。AdobeはSMTP資格情報を提供しません。
-
Cloud Managerでアドバンスドネットワークを設定します。
portForwardsを作成します。SMTP プロバイダーに応じて、30000-30999の範囲でportOrigが設定され、portDestが 465 または 587 に設定されています。 Cloud Manager パイプライン JSONにportForwardsブロックが含まれていることを確認します。 -
メールサービス OSGi設定をリポジトリに追加します。 次の値で
ui.config/src/jcr_root/apps/<project>/osgiconfig/config/com.day.cq.mailer.DefaultMailService.cfg.jsonを作成します。smtp.host= $[env:AEM_PROXY_HOST;default=proxy.tunnel]smtp.port=前の手順のportOrigの値(例:30465または30587)smtp.ssl= true (ポート 465使用時)、またはfalse (ポート 587使用時)
-
Cloud Manager経由で再デプロイします。 完全なデプロイメントパイプラインを実行し、
/system/console/configMgrを開き(読み取り専用ですが、AEMaaCSで表示)、com.day.cq.mailer.DefaultMailServiceが設定された値を反映することを確認します。 -
SMTP接続を確認します。 AEM ワークフローメールをトリガーするか、カスタムサーブレットを介してメールを送信してから、SMTP プロバイダーのログで認証済み接続を確認します。 配信がブロックされている場合は、AEMではなくSMTP プロバイダーレベルで処理されるDKIM/DMARCが原因で、プロバイダーが配信を拒否しているかどうかを確認します。
検証
- AEMから送信されたメールがSMTP プロバイダーのダッシュボードログに表示されることを確認します。
- Day CQ メールサービスで、OSGi コンソールの 30000-30999 範囲に
smtp.host= proxy.tunnelとsmtp.portが表示されていることを確認します。 - AEM
error.logにSMTP接続エラーがないことを確認します。