Comment puis-je configurer Tomcat pour qu'il soit toujours dirigé vers index.jsp après la connexion?

StackOverflow https://stackoverflow.com/questions/134263

  •  02-07-2019
  •  | 
  •  

Question

Actuellement, la prise en charge de la connexion par Tomcat redirige les utilisateurs vers leur emplacement d'origine lorsque l'application a découvert qu'ils n'étaient pas connectés.

Pour cette application particulière, je dois les forcer à toujours revenir à index.jsp .

Je suis presque sûr qu'il s'agit d'une simple option de configuration dans le web.xml du WAR, mais je n'ai pas trouvé de réponse dans Google.

Était-ce utile?

La solution

Une meilleure solution consisterait probablement à utiliser un filtre de servlet. Vous pouvez ensuite vérifier j_username / j_password et une connexion réussie, puis les rediriger où vous le souhaitez.

Autres conseils

C'est quelque chose que vous ne pouvez pas configurer dans web.xml car il ne fait pas partie de la norme. Pour Tomcat (testé sur la version 6.0.14), vous pouvez forcer les utilisateurs à revenir à index.jsp en ajoutant le code suivant au-dessus de votre login.jsp. Il redirige toutes les demandes qui ne possèdent pas de paramètre portant le nom "login" dans l'URL vers la page /index.jsp?login. La redirection ayant le paramètre 'login', la page de connexion sera présentée à l'utilisateur.

Ce n'est pas une solution sécurisée. Si quelqu'un demande une page et ajoute le paramètre de connexion, il sera redirigé. Donc:

/ showPerson? id = 1234 sera redirigé vers /index.jsp?login

/ showPerson? id = 1234? l'identifiant NE sera PAS redirigé vers /index.jsp?login

Le code qui se trouve au-dessus de votre login.jsp:

<%
if (request.getParameter("login") == null) {
    response.sendRedirect(request.getContextPath() + "/index.jsp?login");
    return;
}
%>

Au lieu d'utiliser le paramètre "login", vous pourriez probablement utiliser un cookie. Vous pouvez le rendre plus sécurisé en créant une valeur aléatoire pour le paramètre de connexion (login = randomvalue) et en enregistrant la valeur dans l'objet de session pour comparaison.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top