Acesso Restrito

Boa noite mestres java…estou com um problema que preciso resolver

estou desenvolvendo uma aplicação java para web…o sistema ta funcionando muito bem…tudo na perfeita ordem…os cadastro as exclusões, claro que ainda falta muita coisa. Mas me deparei com um problema:

O acesso restrito do Admin.

Eu fiz o acesso para apenas alguns, ou seja, terão de digitar senha e login, até ai tudo bem. O usuario acessa o endereço da pagina de login coloca a senha e login e entra. mas a pagina restrita fica exposta.

Eu explico: se o usuario digitar a pagina principal ela aparece assim: controleadmin/admin.jsp. isso vai mostrar a tela de login e senha. (Beleza)
Ao acessar a pagina de controle de admin (apos a inclusão de senha e login) ela aparece assim: controleadmin/superadmin.jsp.

so que se o usuário digitar direto: controleadmin/superadmin.jsp. ela também vai…

como eu faço pra restringir isso tambem?: para quando o usuário digitar controleadmin/superadmin.jsp. ele ser enviado para a pagina de login e senha?

aguardo.

Oi Legolas,

O conceito para resolver esse tipo de problema é ter um filtro na sua aplicaçao, que para cada request que chega, você verifica se o usuário logado tem acesso a página que ele tá tentando acessar ou nao.

Como implementar isso exatamente, vai depender dos frameworks que está utilizando:

  • Pode implementar todo controle você mesmo através de um javax.servlet.Filter, se nao estiver usando frameworks.

  • Pode usar spring security, se tiver usando spring

  • Se tiver usando o padrao JEE, deve ter algo pronto também que nao conheço.

E assim por diante…se quiser pode dar mais detalhes de como está seu tech stack agora, que alguém pode dar uma dica mais precisa.

1 curtida

Veja sobre SESSIONS,

Em PHP seria algo assim:

<?php

	if (isset($_SESSION["senha"])){ //e login
	//aqui verifico se foi setado senha e login na sessao
	}else{
	       echo "<script> alert ('Voce nao esta logado!')</script>";
               //então manda de volta para a pagina de acesso irrestrito
	
	}

?>

E em todas as paginas de areas restritas tenho que ter o seguinte codigo, no topo da pagina HTML

<?php
        session_start();
        //aqui verifica se alguem está logado
	//include "conexao.php";
?>

Em JSP deve ter alguma funçao parecida