One Star

Help with tWebServiceInput - Calling WSDL with Windows Authentication

I am working on a project for a client that uses Talend Open Studio 5.5. I'm using tWebServiceInput to call a custom webservice on a server in the same domain. The webservice requires Windows Authentication (or NTLM) in order to call the WSDL or any of the methods. I had the network guys watch was was being passed across when I run the tWebServiceInput, and the call to the WSDL is sent as anonymous even though I have username, password and domain filled in on the tWebServiceInput component. I get back a 401 Unauthorized message and the process stops. Why is teh WSDL call not passing the credentials?
It is a simple webservice that returns an XML doc as a string. If they turn authentication off on IIS, the call works. If they only set 'basic authentication' in IIS, it works. However, it does not work when Windows authentication is turned on. Seems to be a bug in Talend that is not passing the Windows Credentials to the WSDL. I need a work around fast as the project is already supposed to be live and I can't get passed this issue.
twebserviceinput --> tFileOutputRaw

I have also tried tWebService, but the 'Service Configuration' is not passing the credential across on the initial call either.
Any ideas?
Thanks!
Brent Whitmer
3 REPLIES
Moderator

Re: Help with tWebServiceInput - Calling WSDL with Windows Authentication

Hi bwhitmer,
Have you already checked component TalendHelpCenter: tSetKeystore
which allows you to set the authentication data type between PKCS 12 and JKS.
Best regards
Sabrina
--
Don't forget to give kudos when a reply is helpful and click Accept the solution when you think you're good with it.
One Star

Re: Help with tWebServiceInput - Calling WSDL with Windows Authentication

Hi Sabrina,
Thanks for the reply. From what I understand, the tSetKeystore component is used for SSL. We do not have SSL setup. The internal webservice I am trying to call has Window's Authentication setup for the WSDL and all methods. I get a 401 error message back just trying to hit the WSDL. It appears that Talend is not passing the authentication credentials to the WSDL so it gives an error and won't work. I was hoping there was a setting that I could update to send the windows credentials to the WSDL and methods both.
Is there any other way to call a webservice WSDL or bypass the WSDL and call the method directly using NTLM or Windows Authentication? I've tried tWebService and tWebServiceInput. I saw the tSoap one, but I am not familiar enough with hand writing soap calls to use that one.
Any help is appreciated.
Thanks,
Brent Whitmer
One Star

Re: Help with tWebServiceInput - Calling WSDL with Windows Authentication

Hi Brent - this may be too late and you may resolved this already... How about generating a token using some AD credentials, and passing that token in the header of your webservice call? Your webservice should be configured to expect and consume the token in place of username/pwd.