Sistema de login para web! Como seria a estrutura?
7 respostas
alexandref93
Minha dúvida, é que até agora não descobri um jeito de fazer um sistema de autenticação, tipo tem lá uma página de login e tenho um outra página que seria a principal, mas por exemplo não adianta apenas passar pela página de login, se você souber o link da página principal, é só acessar e pronto, como eu faria para que quando fosse para a página principal e não estiver logado, o site pede a senha, e se sair da conta não deixa mas mexer em nada do site, deu pra entender a dúvida??? Eu não faço a mínima idéia de como seria, ou se tem algum conceito ou arquitetura!
eu uso no meu projeto o Phase Listener q recebe toda requisição antes de acessar a um determinado local, ou seja, se naum estiver logado retorna pra página de login, veja:
Uma maneira simples é, ao logar, jogar os dados do usuário logado na sessão (por segurança, não jogue a senha do usuário na sessão…).
Depois de ter os dados na sessão, verifique em casa página se há algum dado na sessão no qual mostre o usuário autenticado, ou seja, busque por exempo o nome do usuário na sessão. Se for diferente de NULL, o usuário está autenticado e pode acessar a página. Se não, redirecione-o a uma página de erro.
Usando Filtros vc consegue fazer isso que vc quer. Não sei se esta usando frameworks, mas no caso de jsp/servlets vc mapearia o servlet ou a url desejada no web.xml e criaria uma classe Filtro que implementaria a interface Filter, nesta classe vc poderia verificar se os dados do usuario estão corretos e chamar chain.doFilter(request, response); que libera o acesso a pagina desejada.
A informação ta ai agora é so pesquisar xD
FernandoFranzini
Sim pedro.
Resumidamente, em aplicações web Java o ponto centro de autenticação e autorização é o servlet filters. Mas existem outras opções tb como:
Autenticação Baseado em container JEE - FORM, BASIC, DIGEST e JAAS (internamente usa um filter). Consulte seu provedor de web container e vejas as opções.