2012-12-19 4 views
2

일부 페이지에 대한 사용자 액세스 제한에 문제가 있습니다. 서블릿에 ajax 요청을 보냅니다. 아약스 성공에서는 조건에 따라 페이지를 다른 페이지로 리디렉션하려고합니다. 하지만 웹 XML에서 서블릿 제약 조건을 설정했기 때문에 리디렉션은 403 코드에서 오류가 발생합니다. response.sendredirect는 아약스 요청이므로 작동하지 않습니다.사용자의 JSP에 대한 직접 액세스 제한

아이디어가 있으십니까? 관련 리미티드 제한과 함께 리다이렉션을하도록 도와주세요.

+2

어, 사용자가 먼저 로그인하면 안됩니까? 나는 정말로 구체적인 문제를 이해하지 못한다. 'response.sendRedirect()'는 사용자가 인증되지 않은 경우에도 작동하지 않았을 것입니다. – BalusC

+0

구체적인 문제는 다음과 같습니다. web.xml의 제약 조건이있는 javascript 페이지로 리디렉션하려고합니다. ... 페이지 제한 <웹 리소스 수집> <웹 리소스 이름> 이름 * .jsp를 /> window.locaation = pageIwantToGo.jsp ... –

+0

을 쓸 때 403 오류가 발생합니다. 따라서 서버에 AJAX 요청을하고 응답을 기반으로 다른 페이지로 리디렉션 e 또는 아닙니다. 나는이 권리를 얻을 수 있습니까? – Uooo

답변

1

문제에 대한 매우 쉬운 해결책이 있습니다.
WEB-INF 폴더 안에는 jsp 파일 (사용자가 직접 액세스하지 않으려는 파일)을 넣어야합니다. 이유? 글쎄, WEB-INF 폴더 안의 모든 것은 기본적으로 전체 애플리케이션의 비공개 멤버입니다. 즉, 이러한 파일은 프로그램 즉 서블릿에서만 액세스 할 수 있습니다.
그래서 어떤 사용자가 JSP 페이지에 직접 액세스하려고하면 "HTTP 404"오류가 발생합니다.
이렇게하면 특정 파일에 대한 사용자 액세스를 제한 할 수 있습니다.

관련 문제