I have a simple call to a webserivce (Sharepoint to be exact), but the web service requires NT Authentication and even though I'm passing in the username and password (with username being of the format DOMAIN\USER) I keep getting the error:
I have searched up and down the web and everyone is saying that ColdFusion8 & 9 does not support web service calls with NT Authentication. I have tried all kinds of tricks like changing server settings and trying to manually pass headers to the service call ... everything.
I was wondering if someone could tell me how to accomplish this, or if an Adobe member could give me a definitive answer that it will NOT work so that we could go forward possibly coming up with another solution be it ASP.NET, C#, etc.
Yes, ColdFusion can not participate in a NTLM authentication exchange with any feature that uses an internal to CF browser, such as <cfhttp...>, CF scheduled tasks, etc.
I suspect that at least one problem is that NTLM isn't a single exchange with the web server. If you ever take a look into the IS logs for any resource that is protected with NTLM authentication, you will see that the web server and browser exchanged no less then THREE requests and responses for each and every piece of content returned; the first will result in a 401.1 response, the second a 401.2 response, and finally the 200 or whatever the final response would be.
ColdFusion, not being a Microsoft product, does not participate in all of this. And I have never heard of anybody who has manually worked it out with all the requests and responses and encryption that would be involved.
But if you do go with an .NET, C# or possibly Java solution, it should be fairly do able to create some piece of authentication code in one of those languages and then use that within your larger ColdFusion application through its many extension capabilities to tie into any of those three languages to some degree or the other.