KB-2316 Emails fail to send with "535 Authentication Credentials Invalid"

Symptoms

Emails from a self-managed Appian environment that uses AWS SES for its SMTP server fail to send.

The following error trace is observed in tomcat-stdOut.log:

jakarta.mail.AuthenticationFailedException: 535 Authentication Credentials Invalid
at com.sun.mail.smtp.SMTPTransport$Authenticator.authenticate(SMTPTransport.java:947)
at com.sun.mail.smtp.SMTPTransport.authenticate(SMTPTransport.java:858)
at com.sun.mail.smtp.SMTPTransport.protocolConnect(SMTPTransport.java:762)
at jakarta.mail.Service.connect(Service.java:342)
at com.appiancorp.ap2.mail.Mail.sendMessage(Mail.java:395)
at com.appiancorp.ap2.mail.Mail.sendMessage(Mail.java:285)
at com.appiancorp.ap2.mail.Emailer.send(Emailer.java:155)
at com.appiancorp.ap2.mail.Emailer.send(Emailer.java:150)
at com.appiancorp.process.runtime.activities.SendEmailActivity.execute(SendEmailActivity.java:474)
at com.appiancorp.suiteapi.process.framework.AbstractActivity.perform(AbstractActivity.java:104)
at com.appiancorp.process.runtime.framework.LegacyActivityExecutor$2.call(LegacyActivityExecutor.java:90)
at com.appiancorp.process.runtime.framework.LegacyActivityExecutor$2.call(LegacyActivityExecutor.java:87)
at com.appiancorp.common.ContextClassLoaderSwitcher.runInContext(ContextClassLoaderSwitcher.java:24)
at com.appiancorp.process.runtime.framework.LegacyActivityExecutor.execute(LegacyActivityExecutor.java:87)
at com.appiancorp.process.engine.UnattendedJavaActivityRequest.execute(UnattendedJavaActivityRequest.java:88)
at com.appiancorp.process.engine.UnattendedJavaActivityRequestResponseCreator.getJavaActivityResultResponse

Cause

The SMTP server is unable to authenticate email send requests coming from Appian due to invalid provided credentials. This can be the result of a typo, but more commonly is the result of specifying AWS credentials instead of the proper SMTP credentials when configuring Appian to use an SMTP server.

More information about the differences between these types of credentials can be found here.

Guidance on generating AWS SES SMTP credentials can be found here.

Action

Ensure that the following properties are set to the correct values that correspond to your AWS SES SMTP credentials:

  • conf.mailhandler.mail.user=<AWS SES SMTP Username> (in <APPIAN_HOME>/conf/custom.properties)
  • conf.password.SMTP=<AWS SES SMTP Password> (in <APPIAN_HOME>/conf/passwords.properties)

After making these changes, restart the application server for the changes to go into effect.

Affected Versions

This article applies to all self-managed versions of Appian.

Last Reviewed: July 2024

Related
Recommended