Subject: | Problem connecting NTLM-protected corporate site |
Hi!
I am using:
Perl, v5.10.0 built for MSWin32-x86-multi-thread
GSSAPI-0.24
LWP-Authen-Negotiate-0.06
Authen-NTLM-0.31
kfw-3-2-2.exe
Microsoft Windows XP Professional Version 2002 Service Pack 2
in corporate network and try to access NTLM-protected site from LWP.
The first response from site has HTTP header like this:
Hypertext Transfer Protocol
HTTP/1.1 401 Unauthorized\r\n
Request Version: HTTP/1.1
Response Code: 401
Content-Length: 1656
Content-Type: text/html\r\n
Server: Microsoft-IIS/6.0\r\n
WWW-Authenticate: Negotiate\r\n
WWW-Authenticate: NTLM\r\n
MicrosoftOfficeWebServer: 5.0_Pub\r\n
X-Powered-By: ASP.NET\r\n
Date: Mon, 14 Jan 2008 10:36:56 GMT\r\n
\r\n
My program, when it goes down to call to
$status = $ctx->init( $creds, $target,
$imech, $iflags, $itime ,
$bindings,$itoken,
undef, $otoken, undef, undef);
in Negotiate.pm, prints the following:
LWP::Authen::Negotiate::authenticate: Unspecified GSS failure. Minor
code may provide more information
LWP::Authen::Negotiate::authenticate: Server not found in Kerberos
database
and stops - does not proceed any further to NTLM::authenticate.
I guess that this is because a server I would like to reach does not
use Kerberos, but NTLM instead. So it is not listed in domain Kerberos
database. (I can just guess, I do not have access to domain database).
So why Negotiate doesn't process this scenario properly - skip to NTLM
and form NTLM response?
Thank you!
BR,
Dmitry