컨트롤를 통한 접근 제어

화면을 접근을 제어하는 컨트롤러를 두고 무조건 모든 요청이 이 컨트롤러를 통과하도록 하는 방법입니다. sevlet를 컨트롤러로 쓰는 경우에는 web.xml에 사용자 권한과 페이지 경로를 매핑해두고 웹컨테이너에서 제공하는 보안 메커니즘을 활용하면 권한 있는 사용자만 해당페이지로 이동하도록 할 수 있습니다.

Form중복 실행 방지
- 정의
웹환경의 특성상 "실행"버튼을 연속으로 두번 누르거나 이전화면으로 돌아가서 새로고침하는 등 한번만 실행되어야 할 프로세스가 사용자의 부주의로 두번이상 실행되는 경우는 흔히 발생합니다. 이런 경우를 form 중복 실행 이라고 합니다.
- 문제점
일반적인 정보조회성 프로세스라면 문제가 없지만, 상품대금 결제라든지 특정정보저장,수정 등의 프로세스라면 이런 form중복 실행은 문제가 될 수 있습니다.
- 해결
이 문제를 해결하기 위해서 사용자의 세션과 form에 모두 synchronized token이라는 정보를 두고 두 토큰값이 같을 떄만 form을 실행할 수 있고 처음으로 form을 실행한 직후 세션의 토큰정보를 다른 값으로 바꾸도록 구현합니다.
이렇게 하면 같은 form이 두번째 실행될 떄부터는 세션의 토큰 값과 form의 토큰값이 다르므로 실행과정이 진행되지 않습니다.
단, 이 방식을 응용하면 필요한 페이지가 순서를 지나서 바로 URL을 통해 특정 페이지에 접근하지 못하도록 제어할 수도 있습니다.ㄷ

Posted by ologist
 TAG

블로그 이미지
ologist

공지사항

Yesterday221
Today25
Total34,406

달력

 « |  » 2012.02
      1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29      

최근에 받은 트랙백

글 보관함