로그인 후 항상 index.jsp로 직접 Tomcat을 구성하려면 어떻게해야합니까?

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

  •  02-07-2019
  •  | 
  •  

문제

현재 Tomcat의 로그인 지원 응용 프로그램이 로그인되지 않았다는 것을 알아 냈을 때 사용자가 처음 위치로 리디렉션합니다.

이 특정 응용 프로그램의 경우 항상 다시 돌아가도록 강요해야합니다. index.jsp.

나는 이것이 전쟁에서 간단한 구성 옵션이라고 확신합니다. web.xml, 그러나 Google에서 답을 찾지 못했습니다.

도움이 되었습니까?

해결책

더 나은 솔루션은 아마도 서블릿 필터를 사용하는 것입니다. 그런 다음 j_username / j_password를 확인하고 성공적인 로그인을 확인하고 원하는 곳으로 리디렉션 할 수 있습니다.

다른 팁

표준의 일부가 아니기 때문에 web.xml에서 구성 할 수없는 것입니다. Tomcat (버전 6.0.14에서 테스트)의 경우 Login.jsp 위에 다음 코드를 추가하여 사용자를 index.jsp로 다시 강제로 강제로 강제 할 수 있습니다. URL의 이름 'login'이있는 매개 변수가없는 모든 요청을 /index.jsp?login 페이지로 리디렉션합니다. 리디렉션에는 '로그인'매개 변수가 있기 때문에 사용자에게 로그인 페이지가 표시됩니다.

안전한 솔루션이 아닙니다. 누군가가 페이지를 요청하고 로그인 매개 변수를 추가하면 리디렉션됩니다. 그래서:

/showperson? id = 1234는 /index.jsp?login으로 리디렉션됩니다.

/showperson? id = 1234? 로그인은 /index.jsp?login으로 리디렉션되지 않습니다.

로그인 위에 올라가는 코드 .JSP :

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

'로그인'매개 변수를 사용하는 대신 쿠키를 사용할 수 있습니다. 로그인 매개 변수 (login = randomvalue)에 대한 랜덤 값을 만들고 비교를 위해 세션 객체에 값을 저장하여 더 안전하게 만들 수 있습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top