ECL.WS authentication error

Good morning,

 

we have a question regarding the configuration of the ECL.WS. What we are trying to do is basically set up a ECL Web Service so that we are able to either invoke a BPM action by using a custom C# application or a plain ECL method call inside a process server script.

The problem is that the call made by the custom C# application works fine, wheres the call made inside a server script keeps returning an error: "The HTTP request is unauthorized with client authentication scheme 'Anonymous'. The authentication header received from the server was 'Negotiate,NTLM'.". We tried using both the MetastormOperation and ServiceClient classes.

We understand that this error might be related to some erroneous WCF and/or IIS setting, but we were not able to figure out which setting we should tweak in order to make it work.

 

Did anybody run into this issue as well and managed to solve it?

 

Thanks for your help,

 

Andrea D. P.

Tagged:

Comments

  • Sucks to find these problems with no resolution.  I'm assuming you've resolved?

     

    I have the same issue from a custom dll trying to call a 9.2 blank form service.  It worked on 9.1.x.  I don't know why this service would need changing.

     

    If you were able to resolve, if you could provide those details, that would be awesome.

     

    Thanks,

    Paul

  • This is actually a WCF auth error. While you can change your code to handle this, you can also disable the WCF auth in the ~\ECL.WS\web.config.

     

    First, disabled Windows Auth for the ECL.WS in the Authentication section of IIS.

     

    Next, open up the web.config.

     

    Look for this section:

     

    <security mode="TransportCredentialOnly">
    <transport clientCredentialType="Windows" />
    <message clientCredentialType="UserName" algorithmSuite="Default" />
    </security>
    

    And change it to this:

     

    <security mode="None">
    <transport clientCredentialType="None" proxyCredentialType="None" realm=""></transport>
    <message clientCredentialType="UserName" algorithmSuite="Default"></message>
    </security>
    
  • Well actually in the end we were not able to solve the issue. 

     

    What we decided to do was to build a custom library (.dll), and make the process call the ECL.WS service referencing that library. Strangely enough, the same configuration that did not work before now works. And even more strange, now I'm reading that it does not work for you... My only suggestion would be messing with the IIS configuration, while I was trying to figure out this issue I found out there were a few settings not set correctly, though I cannot recall which ones right one, sorry.

     

    Cheers,

     

    Andrea D. P.