[SPRING] Spring 3 / Spring Security 2.0.5에서 세션 시간 초과 감지
SPRINGSpring 3 / Spring Security 2.0.5에서 세션 시간 초과 감지
SpringSecurity 2.0.5와 함께 Spring 3에서 실행되는 웹 응용 프로그램이 있습니다.
마지막 방문 이후 사이트 변경 사항을 사용자에게 알리기 위해 세션이 삭제 된 시간을 등록하려고합니다. 그래서 org.springframework.context.ApplicationListener
나는 올바른 사건을 듣는 것을 잊고 있습니까? 아니면 세션 타임 아웃을 위해 해고 된 것이 있습니까? 이것을 달성 할 다른 방법이 있습니까? 그것은 서버 설정 (tomcat 6.0.24 btw)에 의존합니까?
해결법
-
==============================
1.나는 Spring을 사용하지 않는다. 그래서 이것에 대해 아무 말도하지 않지만, javax.servlet.http.HttpSessionListener는 제대로 구현되고 등록 될 때 작동해야한다. 다음과 같이 web.xml에
로 등록해야합니다. 나는 Spring을 사용하지 않는다. 그래서 이것에 대해 아무 말도하지 않지만, javax.servlet.http.HttpSessionListener는 제대로 구현되고 등록 될 때 작동해야한다. 다음과 같이 web.xml에
로 등록해야합니다. <listener> <listener-class>com.example.MyHttpSessionListener</listener-class> </listener>
세션 시간 제한을 올바른 방법으로 테스트하고 있음을 기억하십시오. 예를 들어 웹 브라우저 창을 닫으면 서버 측 세션이 즉시 파괴되지 않습니다. 클라이언트는 30 분 동안 HTTP 요청을 보내지 않는 한 세션을 유지합니다. 이 30 분은 web.xml의
항목으로 구성 할 수있는 기본 세션 시간 초과입니다. 또한 servletcontainer는 정확히 시간 초과 값 이후 세션을 즉시 삭제하지 않습니다. 일정한 간격 (예 : 부하 및 servletcontainer 제조업체 / 유형에 따라 5 ~ 15 분)으로 실행되는 백그라운드 작업입니다. 정확히 30 분 동안 사용하지 않으면 sessionDestroyed () 메서드가 호출되지 않을 때 놀라지 마십시오. 그러나 시간 초과되었지만 파괴되지 않은 세션에서 HTTP 요청을 실행하면 즉시 폐기됩니다.
-
==============================
2.생각, DelegatingSessionListener 접근법이 유용 할 수 있습니다. 그것은 이미 여기 언급 :
생각, DelegatingSessionListener 접근법이 유용 할 수 있습니다. 그것은 이미 여기 언급 :
스프링을 사용하여 HttpSessionListener에 의존성을 주입하는 방법은 무엇입니까?
from https://stackoverflow.com/questions/3719691/detect-session-timeout-in-spring-3-spring-security-2-0-5 by cc-by-sa and MIT license
'SPRING' 카테고리의 다른 글
[SPRING] CrudRepository와 Hibernate : 트랜잭션에 save (Entity)를 저장 (List <S>) (0) | 2019.03.18 |
---|---|
[SPRING] Spring MVC, 하나의 설정 대신 두 개의 설정 인스턴스 (0) | 2019.03.17 |
[SPRING] 스프링 데이터 REST 투영 뒤에서 생성 된 SQL 쿼리 수정 (0) | 2019.03.17 |
[SPRING] AD 그룹을 사용자 역할 스프링 보안 LDAP에 매핑하는 방법 (0) | 2019.03.17 |
[SPRING] 확장 스프링 양식 태그 라이브러리 속성 (0) | 2019.03.17 |