2012-06-21 2 views
1

JSP에서 멋진 세션 메커니즘을 구현하는 데 어려움이 있습니다. 우리의 요구 사항 중 하나는 사용자 당 한 세션 만 허용하고 이전 세션을 덮어 쓰는 다른 세션을 여는 것을 허용하지 않는 것입니다. 모든 것이 잘 작동하지만 :JSP에 대한 신뢰할 수있는 세션 메커니즘

  • URL 다시 쓰기 : 그것은 당신의 세션을 잃고 우리는 서블릿에서 제공하는 모든 세션 메커니즘에 문제가 ... 세션 시간 초과 을 기다릴 것을 의미하기 때문에 우리는 매우 신뢰할 수있는 세션 시스템을해야한다는 것을 의미 ... 그것은 (mod_pagespeed 파일을 병합 할 수 없습니다, 우리는 CDN을 사용하는 ...) 우리가 캐싱 물건을 어떻게 피할 수
  • 쿠키 : 물론 우리는 약간의 클라이언트가 차단 쿠키 ...
  • HTTPS ID : 신뢰할 수 없음 , 연결이 재설정되면 세션이 손실됩니다. 일부 브라우저는 자동으로 연결을 다시 초기화합니다. 이동 중에 웹 사이트를 사용하는 경우 (예 : 거리에서 휴대 전화를 사용하는 경우) 지점에 따라 연결이 변경됩니다.

완벽한 솔루션은 다시 쓰기 + 쿠키를 사용하고 리소스 재 작성을 비활성화하는 것입니다. 응용 프로그램이 여러 도메인에 설치되므로 c : url 태그를 사용해야한다는 것을 알고 있습니다.

완벽한 세션 메커니즘에 대한 의견이 있으십니까?

답변

0

표준 Cookies, URL RewritingSSL Session ID이 세션을 처리하는 가장 좋은 표준 방법입니다.

그래, 어떤 경우에는 Unique id from a given request을 만들 수 있다면 세션을 처리하는 방법을 분명히 가질 수 있습니다. 고유 ID는 다음 요청 매개 변수 중 하나에서만 추론 할 수 있습니다.

  • 요청 URL : URL 다시 쓰기. 표준 최선의 방법.
  • 헤더 : 불가능합니다. 클라이언트가 사용자 지정 헤더를 보낼 수 없습니다.
  • 원격 소켓 주소 : 사이에 프록시가 있기 때문에 다시 완벽합니다.
  • 쿠키 : 표준 최선의 방법입니다.
  • 숨김 양식 필드 : POST 요청에만 작동합니다.
+0

좋아, 결론 : 아니 마술 트릭이 ... – tibo

관련 문제