Criar um listener para matar sessões de usuários  XML
Índice dos Fóruns » Desenvolvimento Web
Autor Mensagem
marceloplis
GUJ Ranger

Membro desde: 22/08/2005 10:08:21
Mensagens: 877
Localização: São Paulo - SP
Offline

Pessoal, boa tarde!

Configurei no meu web.xml o seguinte:



Neste caso, se o usuário ficar 15 minutos inativo, sem navegar, ele expira a sessão OK.

Caso o usuário navegue 5 minutos e fecha o browser ou vai para outro site sem fazer logout, a sessão permanece ativa no servidor e expira depois de 10 minutos, até aqui OK.

Porém a equipe de segurança quer que as sessões ativas de usuários que não estão mais no site sejam invalidadas.

Alguém tem algum exemplo que faça isso ?

Grato.

This message was edited 1 time. Last update was at 15/07/2010 12:57:12

[Email] [MSN]
finotti
JavaEvangelist
[Avatar]

Membro desde: 02/12/2003 14:51:32
Mensagens: 443
Offline

veja se esse post te ajuda
http://www.guj.com.br/posts/list/133639.java

JavaFaces
marceloplis
GUJ Ranger

Membro desde: 22/08/2005 10:08:21
Mensagens: 877
Localização: São Paulo - SP
Offline

finotti wrote:veja se esse post te ajuda
http://www.guj.com.br/posts/list/133639.java


A idéia proposta nesse tópico de usar IFrame oculto, no meu caso não vai servir, pois ele vai resolver o caso do fechamento do browser, porém deixa de funcionar o usuário inativo, caso ele fique com a página aberta sem navegar por mais de 15 min.

Ah, também terei que implementar, posteriormente, o logout por tempo de navegação, tipo, mesmo o usuário navegando sem parar, após 30 minutos logado, a sessão dele será encerrada, forçando ele fazer um novo login. (Requisito também exigido pela equipe de segurança). Mas isso é mais pra frente! rs

Será que tem como implementar uma espécie de listener que fica varrendo as sessões ativas e verificando se o usuário daquela sessão ainda se encontra no nosso site?

Valew.
[Email] [MSN]
jakefrog
GUJ Expert
[Avatar]

Membro desde: 22/01/2007 22:00:53
Mensagens: 4181
Offline

Com listener não tem como. A idéia do request é justamente o cliente chamar o servidor apenas quando precisar. A sessão ela é salva no servidor e sua ID volta para o usuário como cookio ou campo hidden (whatever....).

Imagina se seu site tivesse 300 conexões abertas, e não fechassem? Seu servidor iria cair num tapa só, pois ele teria que estar varrendo todas as conexões para ver o elas fazem. E quando o usuário fecha o browser dele, o o browser tá nem aí pro nosso servidor.

Bem, eu vi no caso, sites como meebo que quando vc vai fechar o browser ele emite um alerta. Não sei se nesses casos, vc poderia matar a sessão e fazer outras coisas. Mas vale a pena procurar. Não sei em qual linguagem esse site foi feito! [=

Inté

Meu blog sobre java uaiHebert.com
Conceitos OO - Diga, não pergunte!, Lei de Demeter
TDD Primeiros Passos, JUnit com HSQLDB, JPA e Hibernate, Cobertura de testes com JUnit Ant e Emma, Cobrindo seus testes com Cobertura, JUnit, HSQLDB, JPA
Código Limpo: Partes: 01,02,03,04,05
Web/JSF - Criando um WebServer, Tratando Exceções, Autenticação de Usuários (Filter/Servlet), JSF - Hello World, AutoComplete, JSF: Converter e Bean Auto Complete, Validação de Login de Usuário com JSF e JAAS, JSF Exibindo Objeto e Mensagens após Redirect, JSF Exemplos Simples com Ajax, JSF Parametros por Get Request RESTFullAplicação Web Completa JSF EJB JPA JAAS, Lazy JSF Datatable Pagination (Primefaces)
Design Pattern - Strategy, Design Pattern - Observer (Parte 01), Design Pattern - Observer (Parte 02)
Business (JPA)- Hibernate 3 com JPA 2, Create schema script: Ant, Hibernate 3 e JPA 2, TableGenerator Chave Primária Simples, SequenceGenerator,Chave Primária Composta, Mapeando Datas (Date) e Enum, Mapeando Duas Tabelas em uma Classe, @OneToOne Unidirecional e Bidirecional, @OneToMany e @ManyToOne Unidirecional e Bidirecional, @ManyToMany Unidirecional e Bidirecional, Ordernando listas e utilizando Map como atributo mapeado,Uma tabela por herança, JPA Uma Classe por Sub-Classe, JPA Consultas e Dicas, [HOT]Quatro soluções para LazyInitializationException[HOT]

SCJP(1.6 - Ingles - 29/12/2009)
SCWCD(1.5 - Ingles - 30/06/2010)

Vamos em frente que atrás vem gente!
 
Índice dos Fóruns » Desenvolvimento Web
Ir para:   
Powered by JForum 2.1.8 © JForum Team