Problem is def due to my misconfig on Tomcat. I am very confident of the 
Workstation. It does WIA successfully with IIS 6, 7.5, and 8 and with the 
Sourceforge SPNEGO implementation..

Sent from my Windows Phone
________________________________
From: André Warnier
Sent: 05/03/2013 20:40
To: Tomcat Users List
Subject: Re: Tomcat Built-in WinAuth - NEW THREAD

Hi.

Your message appears quite garbled in my email client.
Some notes in the text below, which I have reformated somewhat.

Chris Fors wrote:
> I have added in a <security-constraint> to the sample application web.xml 
> (shown below)
  and modified the hello.jsp to show a request.getRemoteUser().
    This has shown to successfully invoke an authentication process.
    Now when browsing to the http: //server/sample I receive a Windows prompt 
for user logon.

That, in my view, is a sign that something is not as it should.
If a real Windows Integrated Authentication (WIA) was taking place, you should 
not see a
login dialog.
The browser instead should negociate this directly with the server, using your 
Windows
login credentials, and nothing should be visible to the user.
If a login dialog appears, I believe that it is because the browser is falling 
back to
attempting a HTTP Basic Authentication.  Which may work or not, depending on 
whether your
Windows Domain policies (and your server) allow it or not.

   This is with IE9 and the browser is configured for autologon for the 
Intranet zone

The "autologon" is obviously not working, if you see a login dialog.

  and the server is in the Intranet zone.

And there are 401 errors in the localhost_access.log:      10.208.101.129 - -
[05/Mar/2013:16:25:21 +0000] "GET /sample/ HTTP/1.1" 401 951

401 responses are not "errors", they are a normal part of the exchange.
(It means kind of "show me some id, buster")

Roughly, it works as follows :

1) the browser tries to get a protected resource, which is marked (on the 
server) as
requiring authentication.  But the browser at first doesn't know that, so it 
sends a first
request without any form of authentication.
2) the server sees that the resource needs authentication, and that the request 
does not
contain an authentication.  So it sends back a 401 response.
This is to indicate to the browser that an authentication is required.
If you examine the headers that the server is sending back, you will see that 
it even
indicates to the browser which form(s) of authentication is required/accepted.
3) the browser sees the 401 response, and start an authentication cycle.
There are variations of this at this point.

If the browser decides to use WIA (what you call autologon I guess),
3a) it will first re-send the request along with a token;
3b) the server will respond with a new 401 including a token of its own
3c) the browser will then re-send the request again, with a final token
(Yes, it takes 3 such steps to do a WIA authentication, not counting the 
server's own
conversation with a Domain Controller)
3d) if the server determines that the provided credentials fit, the server 
returns the
requested resource in a 200 OK response.  Otherwise it returns a 403 Forbidden.

If the browser instead decides to do a Basic Authentication,
3a) the browser will popup a login dialog to the user, asking for id/pw
3b) the browser will then re-submit the original request along with a 
"Authorization:
Basic" header, including the id/pw encoded.
3c) if the server determines that the credentials match, it will return the 
requested
resource in a 200 OK response.  Otherwise it returns a 403 Forbidden.

In any case, 401 responses from the server are a normal part of the processes 
above.
It's only 403 Forbidden that you should worry about.
And the fact that apparently it is not really doing "autologon".

(But maybe this is a feature of the Tomcat SPNEGO authentication, I don't know 
it really)

Note : to really see what is going on, I highly recommend that you install some 
software
like "Fiddler2" on your workstation, to show the headers of the HTTP requests 
and responses.

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org
For additional commands, e-mail: users-h...@tomcat.apache.org

Reply via email to