AnsweredAssumed Answered

Load balancing to exchange email servers

Question asked by John Landry Employee on Feb 1, 2018

Identity Governance & Lifecycle

version 7.0.2 P03

 

I have a customer trying to set up load balancing to exchange email servers for approvals.  Outbound mail is via SMTP while inbound mail uses POP3S.  The outbound mail works every time through the load balancer but the inbound mail is failing with an authentication error.

 

Email test dialog box

 

The aveksaServer.log shows the following warning

 

01/31/2018 10:48:57.982 WARN  (default task-74) [com.aveksa.server.email.EmailSenderServiceClient] Authentication Exception connecting to the default mail server with the approval account.
javax.mail.AuthenticationFailedException: No authentication mechanisms supported by both server and client
 at com.sun.mail.smtp.SMTPTransport.authenticate(SMTPTransport.java:769)
 at com.sun.mail.smtp.SMTPTransport.protocolConnect(SMTPTransport.java:687)
 at javax.mail.Service.connect(Service.java:345)
 at com.aveksa.server.email.EmailClient.sendEmail(EmailClient.java:309)
 at com.aveksa.server.email.EmailSenderServiceClient.testReplyServer(EmailSenderServiceClient.java:499)
 at com.aveksa.gui.pages.admin.system.email.settings.test.TestMailSettingsResultsDialogView.printContent(TestMailSettingsResultsDialogView.java:87)
 at com.aveksa.gui.pages.base.view.DialogPageView.makeContent(DialogPageView.java:134)
 at com.aveksa.gui.pages.base.view.DialogPageView.handleRequest(DialogPageView.java:34)
 at com.aveksa.gui.pages.base.data.PageData.drawView(PageData.java:144)
 at com.aveksa.gui.pages.base.data.PageData.drawView(PageData.java:133)
 at com.aveksa.gui.pages.base.data.PageData.handleRequest(PageData.java:119)
 at com.aveksa.gui.pages.base.data.dialog.EditableDialogPageData.handleRequest(EditableDialogPageData.java:69)
 at com.aveksa.gui.pages.PageManager.forwardRequest(PageManager.java:597)
 at com.aveksa.gui.pages.PageManager.handleRequest(PageManager.java:340)
 at com.aveksa.gui.pages.PageManager.handleRequest(PageManager.java:271)
 at com.aveksa.gui.core.MainManager.handleRequest(MainManager.java:184)
 at com.aveksa.gui.core.MainManager.doGet(MainManager.java:128)
 at javax.servlet.http.HttpServlet.service(HttpServlet.java:687)
 at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
 at io.undertow.servlet.handlers.ServletHandler.handleRequest(ServletHandler.java:85)
 at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:130)
 at com.aveksa.gui.core.filters.LoginFilter.doFilter(LoginFilter.java:53)
 at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:60)
 at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:132)
 at com.aveksa.gui.util.security.XSSFilter.doFilter(XSSFilter.java:20)
 at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:60)
 at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:132)
 at io.undertow.servlet.handlers.FilterHandler.handleRequest(FilterHandler.java:85)
 at io.undertow.servlet.handlers.security.ServletSecurityRoleHandler.handleRequest(ServletSecurityRoleHandler.java:61)
 at io.undertow.servlet.handlers.ServletDispatchingHandler.handleRequest(ServletDispatchingHandler.java:36)
 at org.wildfly.extension.undertow.security.SecurityContextAssociationHandler.handleRequest(SecurityContextAssociationHandler.java:78)
 at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
 at io.undertow.servlet.handlers.security.SSLInformationAssociationHandler.handleRequest(SSLInformationAssociationHandler.java:131)
 at io.undertow.servlet.handlers.security.ServletAuthenticationCallHandler.handleRequest(ServletAuthenticationCallHandler.java:56)
 at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
 at io.undertow.security.handlers.AuthenticationConstraintHandler.handleRequest(AuthenticationConstraintHandler.java:51)
 at io.undertow.security.handlers.AbstractConfidentialityHandler.handleRequest(AbstractConfidentialityHandler.java:45)
 at io.undertow.servlet.handlers.security.ServletConfidentialityConstraintHandler.handleRequest(ServletConfidentialityConstraintHandler.java:63)
 at io.undertow.servlet.handlers.security.ServletSecurityConstraintHandler.handleRequest(ServletSecurityConstraintHandler.java:56)
 at io.undertow.security.handlers.AuthenticationMechanismsHandler.handleRequest(AuthenticationMechanismsHandler.java:58)
 at io.undertow.servlet.handlers.security.CachedAuthenticatedSessionHandler.handleRequest(CachedAuthenticatedSessionHandler.java:70)
 at io.undertow.security.handlers.SecurityInitialHandler.handleRequest(SecurityInitialHandler.java:76)
 at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
 at org.wildfly.extension.undertow.security.jacc.JACCContextIdHandler.handleRequest(JACCContextIdHandler.java:61)
 at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
 at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
 at io.undertow.servlet.handlers.ServletInitialHandler.handleFirstRequest(ServletInitialHandler.java:261)
 at io.undertow.servlet.handlers.ServletInitialHandler.dispatchRequest(ServletInitialHandler.java:247)
 at io.undertow.servlet.handlers.ServletInitialHandler.access$000(ServletInitialHandler.java:76)
 at io.undertow.servlet.handlers.ServletInitialHandler$1$1.run(ServletInitialHandler.java:172)
 at java.security.AccessController.doPrivileged(Native Method)
 at io.undertow.servlet.handlers.ServletInitialHandler$1.handleRequest(ServletInitialHandler.java:169)
 at io.undertow.server.Connectors.executeRootHandler(Connectors.java:197)
 at io.undertow.server.HttpServerExchange$1.run(HttpServerExchange.java:759)
 at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
 at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
 at java.lang.Thread.run(Thread.java:745)

Outcomes