Unica Autenticação entre varias aplicações

5 respostas
leandrogmuller

Ola Pessoal.

Estou pesquisando uma forma de fazer uma unica autenticação para varias aplicações, não poder ser SSO pois os usuários são de redes distintas.
Implementei o JAAS, mas quando autentico em uma aplicação o cache autentication não replica para outras, assim se eu tentar acessar outra aplicação pede a autenticação novamente.
O ideal seria uma autenticação pelo application server e ele replicar para as aplicações, como um portal onde pode ter varias aplicações pinduradas com uma unica autenticação.

Alguém tem uma luz para seguir?

Abs.

5 Respostas

Victor_Neves

cara, não sei se essa é uma solução correta ou se isso te atende, acho que alguns arquitetos podem até tacar pedra em mim pelo o que vou falar! hahahaha
suponha que voce tenha ai o seu cluster de ASs, dai em cada um voce tenha a sua aplicação; dai voce configura para distribuir as sessoes entre eles, acho que é uma tag (ou algo assim) e vai no web.xml…
dai quando o usuário logar, voce pega o ID dele e joga num contexto de sessao junto com um token.
tipo assim

request.getSession().setAttribute( id_usuario , token );

dai isso vai ser distribuído entre os ASs…
o token fica com o cliente.
quando ele for no outro sistema, a aplicação faz um

request.getSession().getAttribute( id_usuario  );

e compara os tokens…

o que acha?

leandrogmuller

Ai trataria isso em um LoginFilter do JAAS para validar o token?

Victor_Neves

é… acho que um filter seria uma boa opção… quanto ao JAAS, nao sei, nunca mexi com ele…

M

não entendi o problema de não poder usar SSO, você pode configurar uma implementação dele para funcionar com diferentes redes.

Se for implementar na mão, o mais correto seria implementar algum serviço centralizado para fazer a validação que ficaria bem mais fácil que tentar distribuir o token/cookie de validação

leandrogmuller

Deu certo, configurei o SSO.
Pensei que só funcionava com certificado de confiança entre do domínio.

Criado 10 de maio de 2013
Ultima resposta 12 de mai. de 2013
Respostas 5
Participantes 3