2012-05-03 3 views
0

하나의 EAR 파일 (컨테이너는 WebLogic 11g)에 "레거시"JSP/서블릿 기반 앱과 함께 배포되는 새로운 JSF 웹 앱에 대한 보안을 구현해야합니다. 지금은 JSF Phase Listener를 사용하여 사용자가 세션에 로그인했음을 나타내는 플래그가 있는지 확인합니다 ("공유 세션 데이터"가 켜져있어 두 웹 앱이 동일한 HTTP 세션을 사용함) .사용자가 로그인하지 않은 상태에서 다른 컨텍스트 루트로 리디렉션하도록 JSF 2.0 web.xml을 구성 할 수 있습니까?

가능한 경우 위상 리스너를 사용하지 말고 대신 로그인 페이지가 아닌 경우 로그인 페이지로 리디렉션하도록 web.xml을 지정하십시오 (이것이 레거시 웹에서 검사가 구현 된 방법입니다). app) 그러나 로그인 페이지는 JSF 웹 응용 프로그램과 다른 컨텍스트 루트에있는 "레거시"응용 프로그램에 있습니다. (레거시 애플리케이션은 새로운 JSF 웹 애플리케이션보다 오래된 서블릿 컨테이너 버전에서 실행 됨).

서로 다른 컨텍스트 루트가있는 경우 첫 번째 웹 응용 프로그램의 로그인 페이지로 리디렉션 할 수 있도록 JSF 웹 응용 프로그램의 web.xml 파일을 구성하는 방법이 있습니까?

+0

기본적으로 "SSO (Single Sign On)"를 찾고 있습니다. 구성은 서버마다 다릅니다. 나는 Weblogic을 한번도 사용하지 않았으므로, 머리 위로부터 대답 할 수는 없다. Google은 해당 키워드 또는 [Google] (https://www.google.com/search?q=weblogic+sso)의 "Weblogic"과 함께 해당 키워드를 확인하여 출발점을 얻는 것이 좋습니다. – BalusC

답변

0

WebLogic 11g에서는이 작업을 수행하지 않을 수 있습니다 (다른 컨텍스트 루트의 로그인 페이지로 리디렉션). Phase Listener 솔루션이 최상의 접근 방법 인 것처럼 보입니다.

참고 WebLogic 11g는 단일 EAR에 배포 된 웹 응용 프로그램간에 세션 및 사용자 주체 정보를 공유 할 수 있지만 현재 웹 응용 프로그램과 다른 컨텍스트 루트에있는 로그인 페이지 URL을 지정할 수는 없습니다 web.xml이 살아 있습니다. 따라서 다른 웹 응용 프로그램의 로그인 페이지로 리디렉션 할 수있는 서블릿 필터와 같은 솔루션이 필요합니다.

관련 문제