Invalidar JSESSIONID e salvar dados em uma nova sessão

1 resposta
L

Olá galera, estou com um problema gigantesco, pesquisei bastante antes de postar aqui mas não achei uma solução do problema, infelizmente… Então vamos lá:

Temos uma aplicação onde ao logar com o usuário o token do JSESSIONID é persistido. Nas boas práticas de segurança, o ideal é que o valor do token seja alterado ao logar, assim como ao deslogar. O problema é que alguns dados da aplicação são gravados na sessão, e até agora não consegui uma forma de invalidar e criar uma nova sessão para manter os dados. Utilizei esse código abaixo e o token foi alterado com sucesso, porém algumas partes da aplicação onde usam esses dados que eram gravados na sessão anterior pararam de funcionar.

HttpServletRequestWrapper httpRequest = (HttpServletRequestWrapper) douiContext.getRequest();

httpRequest.getSession().invalidate();

httpRequest.getSession(true);

Há alguma forma de atualizar o token sem perder os dados do usuário?

Obrigado!

1 Resposta

drsmachado

Se você mantém os dados em sessão, não há como. Afinal, estes dados serão perdidos quando você destruir a sessão e criar uma nova.
Você precisa definir o que quer, se quer manter os dados, mantenha a sessão, se quer destruir a sessão, preste atenção nas opções, ou você persiste os dados que precisa manter em banco de dados ou você perde os mesmos.

Criado 15 de março de 2017
Ultima resposta 15 de mar. de 2017
Respostas 1
Participantes 2