Support Article
Email sending issue (530 5.7.1 Authentication required)
Summary
User needs to send emails from their PRPC system through a highly secured SMTP MTA. But when connecting to that MTA from PRPC, they are getting errors like mentioned below.
Error Messages
com.sun.mail.smtp.SMTPSendFailedException: 530 5.7.1 Authentication required
and after moving to Java 8:
2016-07-18 12:44:10,187 [p-bio-8443-exec-1716] [ STANDARD] [ EPS:01.01.01]
(pega_integrationengine_default) ERROR server.company.com|###.###.###.### user -
Unexpected exception caught while trying to send an email message.
javax.mail.MessagingException: Could not convert socket to TLS;
nested exception is:
javax.net.ssl.SSLHandshakeException: Remote host closed connection during handshake
at com.sun.mail.smtp.SMTPTransport.startTLS(SMTPTransport.java:1999)
at com.sun.mail.smtp.SMTPTransport.protocolConnect(SMTPTransport.java:709)
at javax.mail.Service.connect(Service.java:364)
at javax.mail.Service.connect(Service.java:245)
at
com.pegarules.generated.SendEmailMessage_071019_N64HnJyGpowZnb6lXAmEwA.SendEmailMessage07
_10_19(SendEmailMessage_071019_N64HnJyGpowZnb6lXAmEwA.java:309)
at
com.pegarules.generated.SendEmailMessage_071019_N64HnJyGpowZnb6lXAmEwA.invoke(SendEmailMe
ssage_071019_N64HnJyGpowZnb6lXAmEwA.java:87)
...
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
Caused by: javax.net.ssl.SSLHandshakeException: Remote host closed connection during
handshake
at sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:992)
at sun.security.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1375)
at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1403)
at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1387)
at com.sun.mail.util.SocketFetcher.configureSSLSocket(SocketFetcher.java:543)
at com.sun.mail.util.SocketFetcher.startTLS(SocketFetcher.java:480)
at com.sun.mail.smtp.SMTPTransport.startTLS(SMTPTransport.java:1994)
... 82 more
Caused by: java.io.EOFException: SSL peer shut down incorrectly
at sun.security.ssl.InputRecord.read(InputRecord.java:505)
at sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:973)
... 88 more
2016-07-18 12:44:10,191 [p-bio-8443-exec-1716] [ STANDARD] [ EPS:01.01.01]
(pega_integrationengine_default) ERROR server.company.com|###.###.###.### user -
Failing message has sender ID of <[email protected]> and addressee of
<[email protected]>.
Steps to Reproduce
To reproduce the issue, the SMTP MTA needs to be configured in a special way; in particular, it has to use certificates and encryption keys longer than 1024 bits.
No special setup for PRPC is needed, other than the well document configuration for outbound email. The customer did not reveal the detailed configuration of their SMTP MTA to us.
Root Cause
The root cause was a well known shortcoming in Java 7, in the area of encryption, and a bug in JavaMail, version 1.5.2, that was related to the Java 7 issue mentioned before. In Java 8, the shortcoming was repaired, and the bug in JavaMail was removed with version 1.5.3 of that library.
Resolution
As the root cause description indicates, the solution has two steps:
1. Upgrade the underlying JVM to Java 8.
2. Replace the JavaMail 1.5.2 library by the latest one, version 1.5.5.
The latter is provided with the HFix-28762.
Published August 24, 2016 - Updated October 8, 2020
Have a question? Get answers now.
Visit the Collaboration Center to ask questions, engage in discussions, share ideas, and help others.