Logins unificados entre aplicações no tomcat

Estou desenvolvendo uma intranet onde há varios projetos. Ao logar na intranet ele lista varios sistemas que o usuario tem acesso, e ao clicar no sistema ele abre uma popup direcionando para o outro sistema outro contexto no tomcat, porem para nao precisar fazer login novamente eu estou passando a chave e a senha criptografada pela URL, mas assim nao é muito seguro.

Ex :

Está no contexto
http://localhost:8080/intranet/menu.jsp
ao clicar em um link no menuque é um sistema que o usuario tem acesso eu abro uma popup para o endereço
http://localhost:8080/novoSistema/login.jsp?user=usuario&x=senha
e la eu dou um submit para uma action e busco no banco o usuario, verifico a senha e se ele tem acesso ao sistema solicitado.
Mas pela senha aparecer na url nao é seguro

Pesquisei no forum e no google onde achei topicos antigos falando em usar single sign-on mas nao entendi muito bem.

Queria saber a melhor maneira de fazer isso.

Você até pode continuar dessa maneira, mas aí você deve enviar a senha na URL criptografada, seja com MD5 ou alguma outra maneira.

Mas o ideal é que faça um single sign on mesmo. Procure por JAAS. Se não me engano até tem tutorial aqui no próprio GUJ sobre ele!

Referências : http://java.sun.com/javaee/5/docs/tutorial/doc/bncas.html

Você poderia realizar o login colocar os valores no Session e resgatar o jsessionId .
E depois quando passar para a próxima aplicação vc mandaria esse ID. Sabe como funciona as sessões dos containners ??

Ficaria mais ou menos como o grupo do google (se você estiver logado com seu usuário no g-mail e digitar em outro brownser www.orkut.com ele não vai te pedir a senha de novo pois sua máquina já tem um jsessionId )

Aí se vc clicar em sair no orkut. e voltar pra página do gmail sua sessão estará encerrada pois ao clicar em sair o pessoal invalida sua sessão. Meio confuso né.

Faça um teste (estou assumindo que seu usuário do gmail e do orkut são os mesmos)

Nunca mexi com sessões dos containners.
Não sabia que dava para criar sessões onde todos os projetos poderiam acessar. Achava que so tinha como acessar uma sessão no mesmo contexto.

Da para fazer isso com o tomcat 4.1 ?

Mas de qualquer forma vou dar uma olhada no material que voce passou.

Valeu…