Github user gemmellr commented on a diff in the pull request: https://github.com/apache/activemq-artemis/pull/1961#discussion_r176719562 --- Diff: artemis-protocols/artemis-amqp-protocol/src/main/java/org/apache/activemq/artemis/protocol/amqp/broker/AMQPConnectionCallback.java --- @@ -113,7 +116,20 @@ public ServerSASL getServerSASL(final String mechanism) { result = gssapiServerSASL; break; + case ExternalServerSASL.NAME: + // validate ssl cert present + Principal principal = CertificateUtil.getPeerPrincipalFromConnection(protonConnectionDelegate); + if (principal != null) { + ExternalServerSASL externalServerSASL = new ExternalServerSASL(); + externalServerSASL.setPrincipal(principal); + result = externalServerSASL; + } else { + logger.debug("SASL EXTERNAL mechanism requires a TLS peer principal"); + } + break; + default: + logger.debug("Mo matching mechanism found for: " + mechanism); --- End diff -- Same again on exception vs log.
---