Newsgroups : Borland : borland.public.delphi.internet.winsock : 2005 Feb : Indy 10 and NTLM Auth
| Subject: | Indy 10 and NTLM Auth |
| Posted by: | "Victor Hadianto" (vict..@synop.com) |
| Date: | Mon, 28 Feb 2005 16:11:36 |
Hello,
Despite scouring Google for answers I still couldn't figure out how to get
this working. On this event I set:
procedure TForm1.IdHTTP1SelectAuthorization(Sender: TObject;
var AuthenticationClass: TIdAuthenticationClass;
AuthInfo: TIdHeaderList);
begin
ShowMessage(AuthInfo.Text);
ShowMessage(AuthenticationClass.ClassName);
end;
And I got 'NTLM' and 'TIdSSPINTLMAuthentication' so Indy correctly
recognised that it needs NTLM authentication and pick the correct
authentication class. However this is still not working. As I understand it
the normal NTLM challange is like this:
GET -> file.html
====
401
WWW-Authenticate: Negotiate
WWW-Authenticate: NTLM
=====
GET -> file.html
Authorization: Negotiate .....
====
Get the file ..
But spying on Indy 10 conversation with the web server the second part is
never done. It is probably make sense that Indy does get that it needs to to
NTLM auth and pick the correct class, but what I don't understand why it
doesn't do the second part of the challange?
Anyone has any solution? Or maybe I should start looking at other component
(other than Indy which is a shame really because it does everything else,
and does it really well, but has problem NTLM auth).
Regards,
Victor