AEM as a Cloud Service : échec de la diffusion d’e-mails SMTP

La diffusion d’e-mails SMTP peut échouer dans Adobe Experience Manager as a Cloud Service (AEMaaCS) lorsque le service de messagerie est configuré pour se connecter directement à un hôte SMTP externe sur un port autre que le port par défaut, ou lorsque la configuration requise du transfert du port de réseau avancé est manquante ou incorrecte. Résolvez le problème en configurant la Mise en réseau avancée pour la destination SMTP et en mettant à jour le service de messagerie Day CQ pour utiliser l’hôte proxy et le port proxy mappés.

Description description

Environnement

Adobe Experience Manager as a Cloud Service (toutes versions)

Problème/Symptômes

Lorsque vous tentez d’envoyer des e-mails via SMTP, par exemple par le biais de tâches de déploiement ou asynchrones, la diffusion des e-mails échoue. Les erreurs suivantes sont observées dans les journaux :

Caused by: org.apache.commons.mail.EmailException: Sending the email to the following server failed : your-smtp-host:465
    at org.apache.commons.mail.Email.sendMimeMessage(Email.java:1298) [ org.apache.commons.commons-email:1.6.0]
    ...
Caused by: com.sun.mail.util.MailConnectException: Couldn't connect to host, port: your-smtp-host, 465; timeout 60000
    at com.sun.mail.smtp.SMTPTransport.openServer(SMTPTransport.java:2209) [ com.sun.mail.javax.mail:1.6.2]
    ...
Caused by: java.net.SocketTimeoutException: Connect timed out
    at java.base/sun.nio.ch.NioSocketImpl.timedFinishConnect(NioSocketImpl.java:546)
  • L’envoi d’e-mails échoue pour les tâches ou les processus qui utilisent SMTP.
  • Les journaux affichent les délais d’expiration de la connexion lorsque le service de messagerie tente de se connecter au serveur SMTP sur le port 465.
  • La configuration du service de messagerie Day CQ doit être examinée afin de confirmer qu’AEM as a Cloud Service utilise l’hôte proxy requis et le port proxy mappé plutôt que de se connecter directement à l’hôte et au port SMTP externes.

Cause principale

Dans AEM as a Cloud Service, la diffusion SMTP peut échouer lorsqu’un port SMTP autre que celui par défaut, tel que 465, est utilisé sans la configuration de transfert de port de mise en réseau avancée requise, ou lorsque le service de messagerie est configuré pour utiliser l’hôte SMTP externe et le port de destination directement au lieu de l’hôte et du port proxy mappés.

Résolution resolution

Essayez les étapes suivantes pour résoudre le problème :

  1. Assurez-vous que la mise en réseau avancée est activée pour le programme et l’environnement AEM as a Cloud Service cibles et que vous disposez des autorisations requises pour mettre à jour la mise en réseau et la configuration.

  2. Dans Cloud Manager, ouvrez le programme et l’environnement appropriés. Accédez à Mise en réseau avancée et configurez une règle de sortie de port flexible pour votre service SMTP. Utilisez une règle similaire à l’exemple suivant, en remplaçant le nom d’hôte et les ports par les valeurs requises par votre fournisseur SMTP. Utilisez une valeur de portOrig appropriée dans la plage documentée pour votre environnement. Enregistrez et appliquez la configuration à l’environnement.

    code language-json
    {
      "nonProxyHosts": [ ] ,
      "portForwards": [
        {
          "name": "smtp.example.com",
          "portDest": 465,
          "portOrig": 30465
        }
      ]
    }
    
  3. Configurez le service de messagerie de sorte qu’il utilise l’hôte proxy et le port proxy mappé plutôt que de se connecter directement à l’hôte et au port SMTP externes. Utilisez les valeurs suivantes :

    • smtp.host: $[ env:AEM_PROXY_HOST;default=proxy.tunnel]
    • smtp.port : <mapped-port> (ou la valeur portOrig configurée ci-dessus)
    • smtp.user : valeur secrète pour votre nom d’utilisateur SMTP
    • smtp.password : valeur secrète pour votre mot de passe SMTP
    • from.address : adresse d’expéditeur valide, par exemple no-reply@example.com
    • smtp.ssl : true lorsque le service SMTP de destination utilise le port 465
  4. Indiquez le nom d’utilisateur et le mot de passe SMTP à l’aide d’une configuration prise en charge par secret pour AEM as a Cloud Service plutôt que de stocker des valeurs d’informations d’identification littérales dans le code.

  5. Déployez la configuration mise à jour par le biais de votre processus de déploiement Cloud Manager standard, puis testez la diffusion d’e-mail en réexécutant un processus qui envoie des e-mails et en confirmant que la connexion réussit.

Lecture connexe

recommendation-more-help
experience-cloud-kcs-help-kbarticles