2013-07-19 2 views
0

My JSF 애플리케이션은 JCIFS 인 ​​Active Directory 인증 모듈을 사용합니다. 그러나 JCIFS 필터는 IE8에 대한 ICEpush 관련 사항을 방지합니다. 인증 후 가능한 경우 JCIFS 필터를 제거하려고 생각했습니다. 세션 기반입니다. 세션 통계 및 인증 후 작업을 마치면 현재 세션에서 필터를 제거 할 수 있습니까? 따라서 현재 세션 이후에 요청을 필터링하지 않습니다.세션 시작시 동적으로 서블릿 필터 추가/제거

감사합니다.

답변

1

필터를 동적으로 추가하거나 제거 할 수는 없지만 JCIFS 필터를 확장하는 새로운 필터를 작성하고 세션이 인증되면 특수 처리 (즉, chain.doFilter를 즉시 호출)를 건너 뜁니다.

+0

이것은 답변의 일부는 아니지만 필터를 동적으로 추가/제거하는 것은 Servlet API에서 지원되지 않습니다 (Servlet 3.x를 사용하여 시작하는 경우 제외). 그렇다고해도 도움이되지 않습니다. 필터가 전역 (즉, 단일 세션에 묶여 있지 않음)이기 때문에 유스 케이스를 사용하면됩니다. 필터를 제거하면 인증 된 모든 세션에 대해 필터가 제거됩니다. –