VRaptor 3 - Dúvidas sobre sessão do usuário

1 resposta
FireStein

Boa tarde galera !

Estou desenvolvendo uma aplicação web em Java. No momento estou fazendo o login e surgiram algumas dúvidas de como restringir o acesso do usuário e como manter os dados do usuário na sessão.

Andei vendo alguns tutoriais para fazer isto utilizando o VRaptor e me deparei com o seguinte exemplo:

(Apenas um trecho do exemplo)

@Entity
public class Usuario {

    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Long id;
    private String nome;
    private String email;
    private String senha;

    // getters e setters

}
@Component
@SessionScoped
public class UserSession {

    private Usuario user;

    public boolean isLogged() {
        return user != null;
    }

    public void logout() {
        user = null;
    }

    // get e set

}

Minhas dúvidas tem o foco em segurança.

Esse UserSession que ficara guardado na sessão pelo VRaptor é realmente seguro ?

É seguro guadar a entidade Usuario no UserSession em vez de guardar apenas um identificador do usuário? E qnd necessário ir buscar o usuário no banco de dados. (visto que através da entidade é possível acessar a senha do usuário)

É possível alguém de fora ter acesso aos dados que eu salvo na sessão ?

Vi alguns tutoriais utilizando o SpringSecurity também e gostaria de saber quais são as principais vantagens de se utilizar o SpringSecurity para fazer esse controle de acesso em vez do VRaptor.

Agradeço para quem puder me ajudar, respondendo as perguntas ou passando algum material que me ajude a implementar o login de forma segura.

Muito Obrigado !

1 Resposta

P

FireStein:
Boa tarde galera !

Estou desenvolvendo uma aplicação web em Java. No momento estou fazendo o login e surgiram algumas dúvidas de como restringir o acesso do usuário e como manter os dados do usuário na sessão.

Andei vendo alguns tutoriais para fazer isto utilizando o VRaptor e me deparei com o seguinte exemplo:

*** Vc fala de um jeito que parece que vc encontrou o vraptor no google e vc ta considerando ele como uma lib para controle de login mas o vRaptor não é uma lib para controle de login, ele é um framework para desenvolver aplicações web !!!

*** A session que o vraptor usa é a do container logo não tem o que se preocupar.

*** Sim, é seguro ! (mas o bom senso diz que é melhor guardar um hashcode da senha e não a senha)

*** Não

*** O SpringSecurity é pelo próprio nome uma lib para controle de segurança, então é o mais indicado pois pelo visto vc não esta usando o vRaptor.

Criado 8 de outubro de 2012
Ultima resposta 8 de out. de 2012
Respostas 1
Participantes 2