Announcement

Collapse
No announcement yet.

SOAP Web Service Authentication Troubles (Web Service Destination Connector)

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • SOAP Web Service Authentication Troubles (Web Service Destination Connector)

    I'm having trouble authenticating Mirth's requests to my SOAP based web service. Are Mirth's authentication username/password sent via HTTP Basic authentication or WSSE Soap standard authentication?

    Though the soap requests are being sent via HTTP correctly, I've inspected these HTTP requests via Wireshark and cannot see any the username/password I've specified being added to the requests. Neither the HTTP headers nor the SOAP Envelope Headers have the username and password on them.

    I've also confirmed that the username and password are actually being injected into the Request context via debugging into the Mirth Connect Server Java code (lines 391 - 395 of WebServiceDispatcher.java).

    Code:
    if (webServiceDispatcherProperties.isUseAuthentication()) {
        String currentUsername = dispatchContainer.getCurrentUsername();
        String currentPassword = dispatchContainer.getCurrentPassword();
        
        dispatch.getRequestContext().put(BindingProvider.USERNAME_PROPERTY, currentUsername);
        dispatch.getRequestContext().put(BindingProvider.PASSWORD_PROPERTY, currentPassword);
        logger.debug("Using authentication: username=" + currentUsername + ", password length=" + currentPassword.length());
    }
    When debugging in Eclipse, I can see that the dispatchContainer.getCurrentUsername() call correctly grabs the right username and the getCurrentPassword() grabs the right password.

    Do I have to manually add the username/passwords into my Envelope template in Mirth? If so, what are the accessing properties for these?

    Thanks!
Working...
X