Controle de acesso

Amigos,

Sou novato em desenvolvimento WEB e tenho um dúvida bem simples.

Como faço para controlar o acesso as páginas de uma aplicação.

Como a cada página sei se o usuário é valido (logado) e se ele pode acessar está pagina.

Obrigado por me ajudarem nesse primeiros passos…

Alfredo

Olá alfredojlj,

creio que sua pergunta ficou meio genérica, tente expecificar onde realmente esta sua dúvida e não simplesmente pergunta uma lógica toda por inteiro como foi feito, senão o pessoal do fórum teria de fazer a implementação toda de um controle de login.

Primeiramente diga se é em JSP + Servelet, JSF etc…
Depois em qual parte você tem dúvida, se é no controle da ação, na consulta no banco etc…

Resumindo a situação:

  • Você disponibiliza um campo para o usuário digitar o Login e Senha.
  • Pega estes dois valores e faz um SELECT no banco buscando um resultado onde o Login e a Senha são iguais, caso exista retorne true senão retorne false.
  • Se for retornado true, é porque o usuário é válido, ai você cria uma sessão para o usuário (aqui no GUJ tem falando sobre sessão) para manter as informações do mesmo.
  • Após criada a sessão redireciono o usuário para dentro da página principal do site.
  • Caso o usuário tente acessar a página diretamente pelo endereço você verifica se a sessão é válida, se não tiver sessão criada, é sinal de que não foi validado o usuário, logo você redireciona para a página de Login.
  • No mesmo caso se o usuário não foi encontrado no banco, ou seja, não foi autenticado você redireciona para a página de Login.

Tente fazer a implementação e depois refine suas dúvidas que estaremos ai pra ajudar.

Espero ter ajudado. :wink:
Abraço…

Cara, depende muito do q vc ta usando…

Pode ser Interceptor, Filter, ou um monte de coisas, mas normalmente vc vai basear-se em session.

Especifica melhor que te ajudamos.

Obrigado pela ajuda !!!

Olá

Uma outra alternativa é usar JAAS

Eu realmente acho que usar JAAS só para verificar se o usuário está logado não -e o mais indicado… é complicar o que pode ser mais simples não é não?