2014-10-02 2 views
0

Shiro와 JASIG CAS SSO를 사용하여 인증 및 권한 부여를 수행하는 일반적인 웹 응용 프로그램에서 작업하고 있습니다. 내 응용 프로그램은 Tomcat 7에서 실행되는 JSF 2 웹 응용 프로그램입니다. Shiro를 사용할 수 있고 Shiro 구성에서 CAS 영역에 접속했습니다. 모두 잘 작동합니다 ... 즉, 웹 응용 프로그램을 잘 실행하고 시로 CAS 로그인 페이지로 리디렉션됩니다. 차례로 CAS가 원래 요청한 URL로 리디렉션합니다. 그럼 아무 일도 일어나지 않습니다 !!! 리디렉션 루프가 생깁니다. 내가 요청 된 보안 자원 https://myhost/gdsicache/secured/index로 리디렉션하고, 나는 또한 티켓을 얻을 수 있지만, 다음 루프에서 생을 마감 : 링크에서 볼 수 있듯이Webapp 용 Apache Shiro 및 CAS를 사용한 SSO의 리다이렉트 루프

https://myhost:8443/gdsicache/secured/index?ticket=ST-37-L2N7SCVtHxHWENqBfpOY-cas01.example.org 

.

누가 흐름이 리디렉션 루프로 끝나는 지 아는 사람이 있습니까? Iam은 Web.xml 파일의 shiro 필터를 제외하고는 다른 필터를 가지고 있지 않으므로 더 이상 리디렉션을하지 않습니다.

답변

1

이 리디렉션 루프는 일반적으로 JVM에서 인식하지 못했던 서버 인증서, 주로 클라이언트 시스템 JVM에서 발생합니다. 응용 프로그램이 서버, 특히 JVM과 분리되어 있으면 CA에서 발급 한 중간, 중간 교차 (때로는 교차) 인증서를 가져와야합니다. 그렇지 않으면 서버의 인증서를 인식하지 못하기 때문에 CAS 클라이언트가 루프를 수행합니다.

문제를 일으킨 브라우저 인증서가 아니라 JVM입니다.

추신. 또한 root, intermeadiate (및 someties cross) 인증서를 CAS 서버 JVM으로 가져와야 할 수도 있습니다.