Options

WS authentication in NAV2009

AitorEGAitorEG Member Posts: 342
Hi everyone,

I'm trying to integrate an eSHop with NAV2009. I have published a CodeUnit as a SOAP WS. NAV has windows authentication by the way.

If I connect to the URL fro ma browser outside the server, I must enter user/pasword. I enter the same ones I introduce into the rdp connection. I can get the WSDL from the browser without any problem.

For testing, I'm trying to create request with the SOAPui. If I create a new SOAP project, I introduce the WS url, and I get this:

7ib5d18cfhr0.png


Heer I have my frist problem. What should i introduce here?

Anyway, when I logged into with the browser, I've downloaded the WSDl, so I created a project with that WSDL.

In the request, I introduce same user and password I've introduced before in the browser:
9caa64z8iuzx.png


And the response is this:

mqer1aeuwvat.png


I'm quite lost, becasue I worked a lot with webServices and I never found this troubles. I am afraid that has something to see with the authentication...

Any hint?

Thank you all!!

Comments

  • Options
    rsaritzkyrsaritzky Member Posts: 469
    This is a bit late, but I am troubleshooting the same problem. I've read that the default settings for the NAV Service Tier tries Kerberos first as an authentication method. When it fails, it goes into "Negotiate" mode (thus the message) and tries several NTLM configurations:. I found a post about what happens from a "message" standpoint. It attempts various encoding methods:
    1: C --> S GET ...
    2: C <-- S 401 Unauthorized
    WWW-Authenticate: NTLM
    3: C --> S GET ...
    Authorization: NTLM <base64-encoded type-1-message>
    4: C <-- S 401 Unauthorized
    WWW-Authenticate: NTLM <base64-encoded type-2-message>
    5: C --> S GET ...
    Authorization: NTLM <base64-encoded type-3-message>
    6: C <-- S 200 Ok


    SoapUI OpenSource (free edition) doesn't handle this (from what I've been able to figure out).

    You can override the service tier settings in Customsettings.config:

    <add key="WebServicesUseNTLMAuthentication" value="true"></add>

    Note: I haven't tried this <yet>, because I'm still trying to figure out how to change this setting in a Docker container. But it makes sense.

    Hope this helps you - or perhaps someone else.

    Ron
  • Options
    ftorneroftornero Member Posts: 522
    Hello @AitorEG,,

    Have you enable the NTLM for WS ?

    0kirmoo6zqgp.png

    With that enabled and SopaUI 5.6.0 with the NTLM Authoritation, the call must works.

    v3unvs0221xi.png


    Regards.
  • Options
    AitorEGAitorEG Member Posts: 342
    Hello @ftornero anbd @rsaritzky

    I've turned NTLM autenthication to yes, and solved the problem to connect the WebService via SOAPui. But now we have found another problem. We have an installation in NAV2009, and another into NAV2016. We are creating PHP apps to both of the installation, and the developers are finding huge problem to use PHP against the NTLM autenthication.

    Problems everywhere...
Sign In or Register to comment.