Obter usuário logado em domínio Active Directory

Caros, bom dia.

Como faço para obter o usuário logado no domínio numa aplicação WEB (servlet).

Tenho uma aplicação J2EE que está no JBoss e este está utilizando o IIS 6.0 (Windows 2003).

O que pretendo é que quando o usuário ligar a sua estação, logar no domínio e acessar a minha aplicação (com o Internet Explorer). Na primeira requisição, eu precisaria que a minha aplicação pegasse o usuário (se possível também a senha) que foi logado no domínio. A minha aplicação já conecta no Active Directory para validar usuário e senha. O que preciso é que a aplicação pegue automaticamente o usuário logado no domínio e entre logue direto na aplicação. Ou seja, quero SSO (Single Sign On) de IIS 6.0, Internet Explorer, JBoss (integrado com IIS com o Jakarta Isapi Redirector)

Existe alguma biblioteca (de preferência open source) que facilite a implementação disto?

Olá Henrique.

Espero que esta aplicação te auxilie. http://waffle.codeplex.com. Utiliza NTLM para IE, e para padrão Mozilla, solicita usuário e senha.

Abraços

Boa tarde Henrique,

Estou com o mesmo problema que você, porém em ambiente diferente. Preciso logar um aplicativo web em java com o usuário e senha do AD.
Estarei tentando encontrar uma solução também, mas se conseguir evoluir me avise, pois farei o mesmo.

Fica com Deus.

CAros, bom dia.

Consegui resolver o problema de obter o usuário logado no domínio.

Eu modifico no IIS o site o qual aponta minha aplicação web java (uso o jakarta isapi redirector) para utilizar autenticação integrada e desmarco o login anonimo.

Instalo o filtro Isapi Rewrite o utilizo o seguinte arquivo de configuração :

RewriteEngine on
RewriteCond %{AUTH_TYPE} (.)
RewriteHeader SERVER_VARIABLE_AUTH_TYPE: .
%1
RewriteCond %{AUTH_USER} (.)
RewriteHeader SERVER_VARIABLE_AUTH_USER: .
%1
RewriteCond %{LOGON_USER} (.)
RewriteHeader SERVER_VARIABLE_LOGON_USER: .
%1
RewriteCond %{REMOTE_USER} (.)
RewriteHeader SERVER_VARIABLE_REMOTE_USER: .
%1

O truque é passar os SERVER_VARIABLES (coisa do ASP) para o java, e o Isapi Rewrite o faz, colocando-os como headers.

O waffle funciona também, mas a solução acima foi a que melhor se adaptou para as minhas necessidades.

OBrigado a todos.